无法在Symfony中使用Encore开发服务器获取/

时间:2019-08-18 08:51:09

标签: symfony webpack-dev-server webpack-encore

我想指出的是,我正在使用Webpack默认配置的经典Symfony应用程序。并且watch命令效果很好。

你好, 当我尝试启动Webpack Encore开发服务器时,编译没有任何问题,但是当我访问该页面时,出现错误“ Cannot GET /”。我的控制台没有错误

Error

但是有趣的是,http://localhost:8000/webpack-dev-server似乎可以工作。 Load

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

if (!Encore.isRuntimeEnvironmentConfigured()) {
    Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev');
}

Encore
    // directory where compiled assets will be stored
    .setOutputPath('public/build/')
    // public path used by the web server to access the output path
    .setPublicPath('/build')
    // only needed for CDN's or sub-directory deploy
    //.setManifestKeyPrefix('build/')ne CSS file (e.g. app.css) if your JavaScript imports CSS.
     */
    .addEntry('app', './assets/js/app.js')
    //.addEntry('page1', './assets/js/page1.js')
    //.addEntry('page2', './assets/js/page2.js')

    .splitEntryChunks()

    .enableSingleRuntimeChunk()

    .cleanupOutputBeforeBuild()
    .enableBuildNotifications()
    .enableSourceMaps(!Encore.isProduction())
    // enables hashed filenames (e.g. app.abc123.css)
    .enableVersioning(Encore.isProduction())
    .configureBabel(() => {}, {
        useBuiltIns: 'usage',
        corejs: 3
    })
    //.enableSassLoader()
    //.enableTypeScriptLoader()
    //.enableIntegrityHashes(Encore.isProduction())
    .autoProvidejQuery()
    .autoProvideVariables({
        $: 'jquery',
        jQuery: 'jquery',
        'window.jQuery': 'jquery',
    })
    .enableReactPreset()
;

module.exports = Encore.getWebpackConfig();

2 个答案:

答案 0 :(得分:0)

当尝试通过本地主机访问服务器时,出现“无法获取/”消息。终于,我让Symfony使用以下命令打开网页:

symfony open:local

它在https://127.0.0.1:8000

上打开

答案 1 :(得分:-1)

您可以检查文件是否在public/build文件夹中创建。如果您的文件已完全创建,请检查它们是否具有读取权限。