更改 Symfony public 目录以适应网站
Change Symfony public directory to fit website
我想在我的 public 目录中创建名为 'app' 的目录,并使其成为我的应用程序的根目录而不是 'public' 目录。除了添加我该怎么办:
"extra": {
"public-dir": "public/app/",
...
}
我有一个应该放在 'app' 目录中的 vue 应用程序和一个将放在 'public' 目录中的 wordpress 实例,所以当我输入 www.mywebsite.com 我得到 wordpress 网站,当我输入 www.mywebsite.com/app 时,我得到了我的 symfony/vue 应用程序。
到目前为止,我用以下方式编辑了 webpack.config.js:
.setOutputPath("public/app/build/")
.setPublicPath("/build/")
它认为它在开发环境中有效,但在我点击 www.mywebsite 时在生产环境中有效。com/app 我得到:
<script src="/build/app.js"></script>
错误地指向:www.mywebsite.com/build/app.js 而不是 www.mywebsite.com/app/build/app.js
但是每当我将 webpack.config.js 更改为:
.setOutputPath("public/app/build/")
.setPublicPath("/app/build/")
它适用于生产环境,但不适用于开发环境。
我在这里做错了什么?
根据您的问题描述,我假设您的应用程序在 dev
环境中的 /
处访问,但在 prod
环境中的 /app
处访问,如前所述。所以你必须在调用 .setConfigPath()
时考虑到这一点,方法是检查你在 webpack 配置中 运行 的环境:
.setPublicPath(Encore.isProduction() ? '/app/build' : '/build')
我想在我的 public 目录中创建名为 'app' 的目录,并使其成为我的应用程序的根目录而不是 'public' 目录。除了添加我该怎么办:
"extra": {
"public-dir": "public/app/",
...
}
我有一个应该放在 'app' 目录中的 vue 应用程序和一个将放在 'public' 目录中的 wordpress 实例,所以当我输入 www.mywebsite.com 我得到 wordpress 网站,当我输入 www.mywebsite.com/app 时,我得到了我的 symfony/vue 应用程序。 到目前为止,我用以下方式编辑了 webpack.config.js:
.setOutputPath("public/app/build/")
.setPublicPath("/build/")
它认为它在开发环境中有效,但在我点击 www.mywebsite 时在生产环境中有效。com/app 我得到:
<script src="/build/app.js"></script>
错误地指向:www.mywebsite.com/build/app.js 而不是 www.mywebsite.com/app/build/app.js 但是每当我将 webpack.config.js 更改为:
.setOutputPath("public/app/build/")
.setPublicPath("/app/build/")
它适用于生产环境,但不适用于开发环境。 我在这里做错了什么?
根据您的问题描述,我假设您的应用程序在 dev
环境中的 /
处访问,但在 prod
环境中的 /app
处访问,如前所述。所以你必须在调用 .setConfigPath()
时考虑到这一点,方法是检查你在 webpack 配置中 运行 的环境:
.setPublicPath(Encore.isProduction() ? '/app/build' : '/build')