Aktueller Befehl: ng serve --host --public $IP:$PORT
Ergebnisse auf meiner Website:
Ungültiger Host-Header
Antworten:
Das --disable-host-check
Flag funktioniert einwandfrei, wenn Sie Cloud9 ausführen müssen.
Ich benutze den folgenden Befehl:
ng serve --open --host $IP --port $PORT --disable-host-check
--disable-host-check
Sie eine Warnung in der Konsole. WARNING: Running a server with --disable-host-check is a security risk. See
mittel.com/webpack/… für weitere Informationen.
Sie müssen den Host angeben
ng serve --port 8080 --host 123.34.56.78
Siehe dieses Problem
Bearbeiten Sie die folgende Zeile in
node_modules/webpack-dev-server/lib/Server.js
(Zeile 425) und wechseln Sie zu:return true;
Ich benutze Cloud9 IDE und führe dann aus :
ng serve --port 8080 --host 0.0.0.0
. Funktioniert jetzt gut.
ng serve --host 0.0.0.0 --disable-host-check
Das funktioniert bei mir:
ngrok http --host-header=rewrite PORT
zum Beispiel :
ngrok http --host-header=rewrite 4200
In meinem Fall verwende ich meinen Hostnamen, um die Datei / etc / hosts zu aktualisieren.
vi /etc/hosts
und fügen Sie Ihren Hostnamen in der letzten Zeile hinzu.
127.0.0.1 myHostName.com
um meinen Server zu verbinden,
ng serve -o
Beim Herstellen einer Verbindung zu myHostName.com:4200 ist ein Fehler aufgetreten .
also hat mir das gefallen,
ng serve --host 0.0.0.0 --disableHostCheck true
Wiederverbindung zu myHostName.com:4200 :)
Die Verwendung des folgenden Befehls funktioniert für mich.
ng serve --host 0.0.0.0 --port 8080 --public ipAddress
Fügen Sie in angle.json unter Architektur -> Servieren -> Optionen Folgendes hinzu
"disableHostCheck": true
Ich habe die Antwort von dieser Github-Problemseite erhalten
ng serve
(und wahrscheinlich in der Entwicklung möchten)
Nach der Bereitstellung meiner eckigen App auf einer AWS EC2-Instanz mit Bitnami-Image trat der gleiche Fehler auf. Dann habe ich meine App mit dem folgenden Befehl gestartet und es hat gut funktioniert.
ng serve --host 0.0.0.0 --port 8080 --disableHostCheck true
Getestet auf der folgenden Version von Angular und Server Amazon.
Angular CLI: 6.0.8
Node: 8.11.3
OS: linux x64
Angular: 5.2.8
Die Befehlsoptionen von ng wurden geändert. Verwenden Sie jetzt configuration
anstelle von env
. Der Befehl, der für mich funktioniert hat, ist
ng serve --configuration=dev --port 4009 --host 0.0.0.0 --publicHost myhost.com
Niemals --disable-host-check
auf einem öffentlichen Server verwenden. Angular warnt Sie, wenn Sie dies verwenden. Es mag funktionieren, ist aber ein ernstes Sicherheitsproblem. Sie erhalten diese Meldung, wenn Sie dieses Flag verwenden.
WARNUNG: Das Ausführen eines Servers mit --disable-host-check ist ein Sicherheitsrisiko. Weitere Informationen finden Sie unter https://medium.com/webpack/webpack-dev-server-middleware-security-issues-1489d950874a .
Bitte nehmen Sie sich etwas Zeit, um diesen Artikel zu lesen, der es wert ist, gelesen zu werden.
ng serve --host 0.0.0.0 --public-host sub.myhost.com
Dies wurde tatsächlich in einem der YouTube-Videokommentare dank Mateusz Sawa gelöst
Gehen Sie hier , um es zu überprüfen.
- Die Angabe eines Hosts in package.json funktioniert nicht mehr -
Nur um zu beachten, dass es nicht erforderlich ist, den im Video verwendeten Befehl zu verwenden, reichen die folgenden Anweisungen aus, damit die App bei regelmäßiger angular-cli
Entwicklung funktioniert
Zuerst müssen Sie die Hosts im Ordner etc / finden
Geben Sie cd ..
in der Konsole , bis Sie die Wurzel der Linux - Maschine zu erreichen und überprüfen Sie immer mit , ls
was aufgeführt wird
Wenn Sie die Hosts- Datei sehen, befinden Sie sich am richtigen Speicherort und können sie dann sudo vi hosts
bearbeiten
Fügen Sie die Zeile unter allen IP-Adressen " 0.0.0.0 yourworkspace-yourusername.c9users.io " hinzu (natürlich ohne Anführungszeichen :-))
Ändern Sie auch in package.json "start": "ng serve -H yourworkspace-yourusername.c9users.io "
Dann müssen Sie nur noch in den Anwendungsordner gehen und die App im Terminal mit starten npm start
habe es gerade überprüft und es hat funktioniert
ng dienen --host 0.0.0.0 --port 1234 --public-host mydomain.com
Das funktioniert bei mir.
Siehe: https://github.com/angular/angular-cli/issues/6070
benutze die öffentliche Flagge. zum Beispiel:ng serve --host <workspace>-<username>.c9users.io --public
Sie sollten einfach 0.0.0.0 in Ihre lokale IP-Adresse wie 192.168.1.42 ändern und es sollte funktionieren.
ng serve --host 192.168.1.42
Die Sache ist, dass Sie nur auf den Link zugreifen können, den Sie im Parameter --public angegeben haben. In meinem Fall habe ich die IP-Adresse in --public angegeben und versucht, mit der Domain, die ich für diese IP registriert habe, darauf zuzugreifen. Aber ng bindet es für den einzigen in --public bereitgestellten Host.
Um dieses Problem zu lösen, habe ich einen weiteren Parameter angegeben : disable-host-check
. Vollständiger Befehl:ng serve --disable-host-check --host 0.0.0.0 --port 3100 --public x.x.x.x
Um mehr zu erfahren, klicken Sie hier
Ich habe diesen Fehler erhalten, als ich versucht habe, mit dem localtunnel
Dienstprogramm auf unsere App zuzugreifen .
@tarns Vorschlag (aus einem Kommentar zur akzeptierten Antwort) --disableHostCheck true
, dem ng serve
Befehl etwas hinzuzufügen , hat den Trick getan.
Hier ist eine Lösung, wenn noch jemand im invalid host header
Problem steckt :
Führen ng eject
Sie es aus, um das zu erstellen webpack.config.js
. Laufen Sie, npm install
wenn es fragt. Fügen Sie unten "disableHostCheck":true
zu devServer
in hinzu webpack.config.js
. Wie unten:
"devServer": {
"historyApiFallback": true,
"disableHostCheck" : true //<-- add this line
}
Dann in package.json
Dateiänderungs start
Option unter ng
wie diese
"start": "webpack-dev-server --host 0.0.0.0 --port YOURPORT --public YOURIP:YOURPORT"
Führen Sie nun den Winkel mit npm start
Befehl aus. Das ist es.
Ändern Sie die Zeile 425 in der Datei "node_modules / webpack-dev-server / lib / Server.js" von false in true. dh
Vorher: return false;
Aktualisiert: return true;