运行React App时出现"无效的主机标头"

Bha*_*ani 15 deployment reactjs webpack react-router webpack-dev-server

我有一个简单的React JS项目,我正在部署到OSE中.我也在我的项目中使用以下依赖项.

 "webpack": "^2.2.0",
 "webpack-dev-server": "^1.14.1",
 "react": "^15.5.4",
 "react-router-dom": "^4.1.1"
Run Code Online (Sandbox Code Playgroud)

我也通过下面的构建脚本运行我的项目.

"build": "SET NODE_ENV=production && webpack-dev-server --host 0.0.0.0 --inline --history-api-fallback --content-base . "
Run Code Online (Sandbox Code Playgroud)

在OSE中一切顺利,Webpack成功编译.但在访问网址时,它会在网页上显示"无效的主机标头".

任何人都可以帮忙.React中有些新东西.

提前致谢.

Ken*_*ick 26

在你的WebPack的配置,你可以添加disableHostCheck: truedevServer配置.例如,

devServer: {
  disableHostCheck: true
}
Run Code Online (Sandbox Code Playgroud)

  • 该解决方案对于当地环境是可以接受的。 (4认同)
  • 不建议这样做,因为它会引入安全问题。有关解释,请参阅 https://github.com/webpack/webpack-dev-server/issues/887。 (2认同)
  • 那么推荐的解决方案是什么?链接似乎没有解决 (2认同)

nyx*_*yxz 5

在较新版本的 Webpack(我使用 v4)中,该功能disableHostCheck 不可用,但文档建议使用allowedHosts. 这对我有用。

module.exports = {
  //...
  devServer: {
    allowedHosts: 'all',
  },
};

Run Code Online (Sandbox Code Playgroud)

请参阅Webpack 的 devServer.allowedHosts