我只是不知道选项devServer.index的用例是什么。
我认为对此选项的更改将反映在devServer.historyApiFallback选项中,但是在我启动dev-server(将devServer.index设置为'demo.html')之后,控制台告诉我'404s将回退到/ index .html”,而不是“ /demo.html”。
谷歌搜索几分钟后,我找不到该选项的任何示例。
任何人都可以解释并举例说明以便更好地理解吗?谢谢。
答案 0 :(得分:0)
结论: 除devServer.publicPath指定的目录外,devServer.index配置与目录访问规则无关。
说明: 开发服务器对目录请求的响应方式由服务器本身决定,我想每次您从静态服务资源访问目录时,开发服务器都会在该文件夹下使用索引文件(例如index.html)来响应您。 但是,更改选项devServer.index不会影响此规则。它仅影响由选项devServer.publicPath指定的目录。默认情况下,dev-server不会为publicPath下的目录请求找到索引文件,并且会给出404响应。将devServer.index更改为值'index.html'后,服务器将在其请求的文件夹下以文件“ index.html”响应这些请求。这就是该选项的用例。
提示:
如果有任何错误,请更正我的回答,谢谢。
答案 1 :(得分:0)
给我打电话一个泥泞的骗子,但是我长大了,我叫我的HTML文件index.htm,所以现在只为webpack创建一个index.html令我很伤心。因此,在花了几个小时试图修复它之后,我终于在此之后发现了这个帖子,以及这个错误报告:
https://github.com/webpack/webpack-dev-server/issues/2540
如果要使用Webpack开发服务器更改用作公用目录中索引的文件的名称,则可以完成所有操作:
devServer: {
contentBase: path.join(__dirname, "public/"),
port: 3000,
publicPath: "http://localhost:3000/dist/",
hotOnly: true,
staticOptions: { index: 'index.htm' }
},
请注意staticOptions: { index: 'index.htm' }
。那就是魔术发生的地方。
我同意,这是说devServer.index属性似乎没有作用。但是它绝对应该做的事情是可能的。 ew。