Текущая команда: ng serve --host --public $IP:$PORT
Результаты на моем сайте:
Недопустимый заголовок хоста
Текущая команда: ng serve --host --public $IP:$PORT
Результаты на моем сайте:
Недопустимый заголовок хоста
Флаг --disable-host-check
отлично работает, если вам нужно запустить из Cloud9.
Я использую следующую команду:
ng serve --open --host $IP --port $PORT --disable-host-check
Смотрите эту проблему
Отредактируйте следующую строку в
node_modules/webpack-dev-server/lib/Server.js
(строка 425), изменив на:return true;
Я использую cloud9 IDE, затем запустите:
ng serve --port 8080 --host 0.0.0.0
. Сейчас работает нормально.
Вам нужно указать хост
ng serve --port 8080 --host 123.34.56.78
Использование приведенной ниже команды работает для меня.
ng serve --host 0.0.0.0 --port 8080 --public ipAddress
Вам нужно выполнить следующее: ng serve --port 8080 --publicHost 123.34.56.78 (ваш IP-адрес сервера или имя хоста). работает для меня.
Я столкнулся с такой же ошибкой после развертывания моего приложения angular в экземпляре AWS EC2 с изображением bitnami. Затем я запустил приложение с командой ниже, и он работал нормально.
ng serve --host 0.0.0.0 --port 8080 --disableHostCheck true
Это было фактически разрешено в одном из видео-комментариев youtube благодаря Mateusz Sawa
Go здесь, чтобы проверить это.
- указать хост в package.json больше не работает -
просто отметим, что нет необходимости использовать команду, которая использовалась в видео, достаточно инструкций, чтобы приложение работало с помощью обычной angular-cli
development
сначала вам нужно найти хосты в папке и т.д.
введите cd ..
в консоли до тех пор, пока вы не достигнете корня Linux-машины, и всегда проверяйте ls
, что указано
если вы видите файл hosts, чем находитесь в нужном месте, а затем используйте sudo vi hosts
для его редактирования
добавить строку ниже всех ip-адресов "0.0.0.0 yourworkspace-yourusername.c9users.io" (без кавычек, конечно:-))
также в package.json change "start": "ng serve -H yourworkspace-yourusername.c9users.io"
вам просто нужно перейти в папку приложения и запустить приложение в терминале с помощью npm start
проверил его только сейчас, и он работал
Используя нижеприведенную команду с последней версией Angular, для меня работает CLI.
ng serve --host 0.0.0.0 --public-host <workspace>-<username>.c9users.io
Использование команды ниже работает для меня для Angular CLI: 6.0.7
ng serve --host 0.0.0.0 --port 8080 --disableHostCheck
Протестировано на приведенной ниже версии 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 --port 8080 --live-reload-port 8081 --public $C9_HOSTNAME
Обратитесь к: https://github.com/angular/angular-cli/issues/6070
использовать государственный флаг. например: ng serve --host <workspace>-<username>.c9users.io --public
Вы должны просто изменить 0.0.0.0 на свой локальный IP-адрес, например 192.168.1.42, и он должен работать.
ng serve --host 192.168.1.42
Дело в том, что вы можете получить доступ только к ссылке, указанной в параметре --public. В моем случае я предоставил IP-адрес в -публике и попытался получить к нему доступ с доменом, зарегистрированным на этом IP-адресе. Но ng связывает его для единственного хоста, предоставленного в --публичной.
Чтобы решить эту проблему, я поставил еще один параметр: disable-host-check
.
Полная команда: ng serve --disable-host-check --host 0.0.0.0 --port 3100 --public x.x.x.x
Чтобы узнать больше, нажмите здесь
Я получал эту ошибку при попытке получить доступ к нашему приложению с помощью утилиты localtunnel
.
@tarn предложение (из комментария о принятом ответе) добавления команды --disableHostCheck true
в команду ng serve
выполнило трюк.
Вот решение, если кто-то все еще застревает в 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"
Теперь запустите команду angular с помощью команды npm start
.
Вот оно.
Ниже оба решения будут работать. В командной строке:
ng serve --public --host yourip --port yourportnumber
ng serve --host 0.0.0.0 --port yourport --disableHostCheck true
В моем случае я использую свое имя хоста для обновления файла /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 :)
Это работает для меня ngrok http --host-header = переписать ПОРТ
например: ngrok http --host-header = rewrite 4200
Измените строку 425 в файле "node_modules/webpack-dev-server/lib/Server.js" с false на true. т.е.
До: вернуть ложь;
Обновлено: верните истину;