Angular 2でlocalhostの外部へのアクセスを許可するにはどうすればよいですか。私は簡単にlocalhost:3030/panel
にナビゲートできますが、10.123.14.12:3030/panel/
のように自分のIPを書いているときにナビゲートすることはできません。
修正方法を教えてください。プロジェクトのインストールと実行にnpm
(ノードプロジェクト管理 - ノードインストール/ノード起動)を使用していません。
あなたが望むなら、私は私のpackage.json
とindex.html
を提供することができます。
ng serve --Host 0.0.0.0
を使用すると、localhost
ではなくipを使用してng serve
に接続できます。
EDIT
Cliの新しいバージョンでは、代わりにあなたのローカルIPアドレスを提供しなければなりません
編集2
新しいバージョンのcli(私はv5以降だと思います)では、あなたのネットワーク上の誰かが話をするために、0.0.0.0
をipとして使うことができます。
Macユーザー:
ng serve --Host 192.168.1.x
それから192.168.1.x:4200
を通して他のデバイスであなたのページを見ることができなければなりません。
コマンドを実行します - "ng serve --Host = 0.0.0.0 --disable-Host-check"
これはホストチェックを無効にし、IPアドレスで外部からのアクセスではなくローカルホストへのアクセスを許可します。
ngrokを使用して、トンネルを通過するすべてのHTTPトラフィックをイントロスペクトすることもできます。その後、ngrok http --Host-header=rewrite 4200
を使用して公開できます。
Cmdを開き、プロジェクトの場所に移動します。つまり、プロジェクトに対してnpm installまたはng serveを実行します。
その後、コマンドng serve --Host 10.202.32.45
を実行します。ここで、10.202.32.45
はIPアドレスです。
4200があなたのポート番号である10.202.32.45:4200
であなたはあなたのページにアクセスすることができるでしょう。
注:このコマンドを使用してアプリを提供している場合は、localhost:4200
にアクセスすることはできません
以下のようにプロジェクトのangular.json
ファイルを編集するだけでうまくいきます。
...
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "project:build",
"Host": "0.0.0.0"
},
...
あなたのIPアドレスにアクセスするには、次のコマンドを使用できます。
ng serve --Host 0.0.0.0 --disable-Host-check
Npmを使用していて、毎回コマンドを実行したくない場合は、 scripts セクションの package.json ファイルに次の行を追加してください。
"scripts": {
...
"start": "ng serve --Host 0.0.0.0 --disable-Host-check"
...
}
その後、同じネットワーク内の他のシステムからアクセスするには、下記のコマンドを使用してアプリを実行します。
npm start