可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
How can I allow access outside the localhost at Angular2? I can navigate at localhost:3030/panel
easily but I can not navigate when I write my IP such as 10.123.14.12:3030/panel/
.
Could you please allow me how to fix it? I am not using npm
(node project manage - node install/node start ) to install and run the project.
If you want, I can provide my package.json
and index.html
.
回答1:
Using ng serve --host 0.0.0.0
will allow you to connect to the ng serve
using your ip instead of localhost
.
EDIT
In newer versions of the cli, you have to provide your local ip address instead
EDIT 2
In newer versions of the cli (I think v5 and up) you can use 0.0.0.0
as the ip again to host it for anyone on your network to talk to.
回答2:
Mac users:
- Go to System Preferences -> Network -> Wi-Fi
- Copy the IP address below Status (Usually 192.168.1.x)
- Paste it in your ng serve like:
ng serve --host 192.168.1.x
Then you must be able to see your page on other devices through 192.168.1.x:4200
.
回答3:
run command-" ng serve --host=0.0.0.0 --disable-host-check "
this will disable host check and allow to access from outside(instead localhost) with ip address
回答4:
You can use the following command to access with your ip.
ng serve --host 0.0.0.0 --disable-host-check
If you are using npm and want to avoid running the command every time, we can add the following line to the package.json file in the scripts section.
"scripts": {
...
"start": "ng serve --host 0.0.0.0 --disable-host-check"
...
}
Then you can run you app using the below command to be accessed from the other system in the same network.
npm start
回答5:
I just edit angular.json
file in my project as below and it works
...
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "project:build",
"host": "0.0.0.0"
},
...
回答6:
you can also introspect all HTTP traffic running over your tunnels using ngrok
, then you can expose using ngrok http --host-header=rewrite 4200
回答7:
Open cmd and navigate to project location i.e. where you run npm install or ng serve for the project.
and then run the command - ng serve --host 10.202.32.45
where 10.202.32.45
is your IP address.
You will be able to access your page at 10.202.32.45:4200
where 4200 is your port number.
Note: If you serve your app using this command then you won't be able to access localhost:4200
回答8:
For the problem was Firewall. If you are on Windows, make sure node is allowed through
回答9:
Use this :
ng serve --host 0.0.0.0 --port xxxx
回答10:
For the people who are using node project manager, also this line adding to package.json will be enough. For angular CLI users, mast3rd3mon's answer is true.
You can add
"server": "webpack-dev-server --inline --progress --host 0.0.0.0 --port 3000"
to package.json