我正在开发一个用于多个客户端站点的应用程序。它们作为子域或路径(我无法控制)托管,如下所示:
这是我的 Webpack 1 配置:
module: {
loaders: [
{
...
},
{
test: /\.(woff2?|eot|svg|ttf|md|jpg|png)$/,
loader: 'file?name=[hash].[ext]'
}
]
},
output: {
path: __dirname + "/dist/build/",
filename: "app.min.js"
}
有了这个,我的资产被编译到一个/build/
文件夹中,该文件夹还包含主应用程序 JavaScript 文件:
我遇到的问题是,如果应用程序托管在预先存在的路径(上面的 URL 示例 2)上,则找不到已编译的资产,但如果不存在路径,则加载得很好。进行一些调试表明,无论出于何种原因,都必须指定/build目录才能在第二个 URL 示例上加载资产,但指定/build会破坏第一个 URL 示例:
- https://application.example.com/compiled-asset.png ✓
- https://example.com/application/compiled-asset.png ⇐ 404
- https://application.example.com/build/compiled-asset.png ⇐ 404
- https://example.com/application/build/compiled-asset.png ✓
我在这里做错了什么?