Symfony Encore / Webpack {{ asset('build/app.js') }} 未提供有效路径,从浏览器加载资产时出错

Symfony Encore / Webpack {{ asset('build/app.js') }} not giving a valid path, error loading assets from the browser

刚开始使用 Symfony 和 Encore/Webpack。

我遵循了 Symfony 的教程,我的 webpack.config.js 如下:

var Encore = require('@symfony/webpack-encore');

Encore
    .setOutputPath('public/build/')
    .setPublicPath('/build')

    .addEntry('app', './assets/js/app.js')
    .addStyleEntry('global', './assets/scss/global.scss')

    .enableSassLoader()
    .enableLessLoader()
    .enablePostCssLoader()
    .enableReactPreset()

    .autoProvidejQuery()

    .enableBuildNotifications()

    .cleanupOutputBeforeBuild()
    .enableSourceMaps(!Encore.isProduction())
    .enableVersioning(Encore.isProduction())

    .createSharedEntry('vendor', [
        'materialize-css',
        './assets/js/global.js',
    ])
;

module.exports = Encore.getWebpackConfig();

我的基本观点是:

{% extends 'base.html.twig' %}
{% block body%}
Start

{% endblock %}

{% block stylesheets %}
    <link rel="stylesheet" href="{{ asset('build/global.css') }}">
{% endblock %}
{% block javascripts %}
    <script src="{{ asset('build/app.js') }}"></script>
{% endblock %}

我的问题是,即使这两个文件与文档中的教程几乎相同,在本地主机上测试时,我在加载 css 和 js 假定的输出文件时遇到错误。

我的 manifest.json 有这个,那些文件存在并且在正确的位置编译得很好:

"build/app.js": "/build/app.b9fa9f82050709ad01b8.js",
"build/global.css": "/build/global.ae6834d55ea0d4ff4100ad77aeffad72.css"

chrome 控制台的输出:

GET http://localhost/my-website/public/build/app.js net::ERR_ABORTED         localhost/:11
GET http://localhost/my-website/public/build/global.css net::ERR_ABORTED     localhost/:6

我刚刚删除了我的项目,以相同的方式重新配置,它现在可以工作了...