当前命令: ng serve --host --public $IP:$PORT
我的网站上的结果:
无效的主机头
Answers:
--disable-host-check
如果需要从Cloud9运行,则该标志可以正常工作。
我使用以下命令:
ng serve --open --host $IP --port $PORT --disable-host-check
--disable-host-check
控制台,则会收到警告。WARNING: Running a server with --disable-host-check is a security risk. See
medium.com/webpack/…了解更多信息。
看到这个问题
在
node_modules/webpack-dev-server/lib/Server.js
(第425行)中编辑以下行 ,更改为:return true;
我正在使用cloud9 IDE,然后运行:
ng serve --port 8080 --host 0.0.0.0
。现在工作正常。
ng serve --host 0.0.0.0 --disable-host-check
这对我有用:
ngrok http --host-header=rewrite PORT
例如 :
ngrok http --host-header=rewrite 4200
就我而言,我使用主机名来更新/ etc / hosts文件。
vi /etc/hosts
并在最后一行添加您的主机名。
127.0.0.1 myHostName.com
连接我的服务器,
ng serve -o
连接到myHostName.com:4200时发生错误。
所以,我确实是这样
ng serve --host 0.0.0.0 --disableHostCheck true
重新连接到myHostName.com:4200 :)
使用以下命令对我有用。
ng serve --host 0.0.0.0 --port 8080 --public ipAddress
在具有bitnami映像的AWS EC2实例上部署我的角度应用程序后,我遇到了同样的错误。然后我用下面的命令启动了我的应用程序,它运行良好。
ng serve --host 0.0.0.0 --port 8080 --disableHostCheck true
在以下版本的Angular和服务器Amazon上进行了测试。
Angular CLI: 6.0.8
Node: 8.11.3
OS: linux x64
Angular: 5.2.8
ng命令选项已更改,现在使用configuration
代替env
。对我有用的命令是
ng serve --configuration=dev --port 4009 --host 0.0.0.0 --publicHost myhost.com
切勿--disable-host-check
在公共服务器上使用。如果使用此功能,Angular会警告您。它可能有效,但是它是一个严重的安全问题。如果使用该标志,则会收到此消息。
警告:使用--disable-host-check运行服务器存在安全风险。有关 更多信息,请参见 https://medium.com/webpack/webpack-dev-server-middleware-security-issues-1489d950874a。
请花一些时间阅读该文章,值得一读。
ng serve --host 0.0.0.0 --public-host sub.myhost.com
感谢Mateusz Sawa,这实际上是通过youtube视频评论之一解决的
去这里检查一下。
-在package.json中指定主机不再起作用-
只是要注意,没有必要使用视频中使用的命令,下面的说明足以使应用程序使用常规angular-cli
开发工作
首先,您需要在etc /文件夹中找到主机
cd ..
在控制台中键入,直到到达linux计算机的根目录并始终检查ls
列出的内容
如果看到主机文件,则说明位置正确,然后使用sudo vi hosts
它进行编辑
在所有IP地址下方添加“ 0.0.0.0 yourworkspace-yourusername.c9users.io ”行(当然不带引号:-))
还可以在package.json中更改“ start”:“ ng serve -H yourworkspace-yourusername.c9users.io ”
那么您只需要转到应用程序文件夹并在终端中使用以下命令启动应用程序 npm start
刚刚检查了它就可以了
ng serve --host 0.0.0.0 --port 1234 --public-host mydomain.com
这对我有用。
请参阅:https : //github.com/angular/angular-cli/issues/6070
使用公共标志。例如:ng serve --host <workspace>-<username>.c9users.io --public
如果有人仍然invalid host header
遇到问题,这是解决方案:
运行ng eject
它将创建webpack.config.js
。npm install
如果询问,请运行。将以下内容添加"disableHostCheck":true
到devServer
中webpack.config.js
。如下所示:
"devServer": {
"historyApiFallback": true,
"disableHostCheck" : true //<-- add this line
}
然后在像这样的package.json
文件更改start
选项下ng
"start": "webpack-dev-server --host 0.0.0.0 --port YOURPORT --public YOURIP:YOURPORT"
现在使用npm start
命令运行角度。而已。