Angular 应用更改默认端口不工作
Angular app changed default port not working
我有一个简单的 angular 应用程序并更新了 angular.json 中的端口,我的端口为
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "ceams-ui:build",
"port": 4444
},
$ ng --version
_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ Γû│ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/
Angular CLI: 10.2.0
Node: 12.19.0
OS: win32 x64
Angular: 10.1.6
... animations, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router
Ivy Workspace: Yes
Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1002.0
@angular-devkit/build-angular 0.1002.0
@angular-devkit/core 10.2.0
@angular-devkit/schematics 10.2.0
@angular/cdk 10.2.7
@angular/cli 10.2.0
@angular/flex-layout 10.0.0-beta.32
@angular/material 10.2.7
@schematics/angular 10.2.0
@schematics/update 0.1002.0
rxjs 6.6.3
typescript 4.0.5
$ ng 服务成功为
日期:2021-03-01T17:18:10.880Z - 哈希:8144cdb2f65873b9a965 - 时间:31537ms
** Angular Live Development Server 正在侦听 localhost:4444,打开浏览器 http://localhost:4444/ **
: 编译成功。
在本地浏览器上,它总是出错,因为,
无法访问此站点。
而我的“curl http://localhost:4444/”成功了。
它与默认端口 4200 完美配合。不确定发生了什么
观察:netstat -tln 输出,
尝试过但没有运气。一项观察“netstat -tln”给出的本地 IP 为“127.0.0.1”,但对于 4200,它是不同的,
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:4200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:4444 0.0.0.0:* LISTEN
通过命令更改端口然后尝试:
ng config projects.(your-project-name).architect.serve.options.port (port-no)
我参考https://github.com/angular/angular-cli/issues/2375找到了解决方案
'ng' 默认设置 n/w 与 127.0.0.0 的接口,我们需要在命令中明确提及“--host 0.0.0.0”,仅此而已:-)
所以实际的命令应该是,
ng serve --host 0.0.0.0 --port 4444
我有一个简单的 angular 应用程序并更新了 angular.json 中的端口,我的端口为
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "ceams-ui:build",
"port": 4444
},
$ ng --version
_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ Γû│ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/
Angular CLI: 10.2.0
Node: 12.19.0
OS: win32 x64
Angular: 10.1.6
... animations, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router
Ivy Workspace: Yes
Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1002.0
@angular-devkit/build-angular 0.1002.0
@angular-devkit/core 10.2.0
@angular-devkit/schematics 10.2.0
@angular/cdk 10.2.7
@angular/cli 10.2.0
@angular/flex-layout 10.0.0-beta.32
@angular/material 10.2.7
@schematics/angular 10.2.0
@schematics/update 0.1002.0
rxjs 6.6.3
typescript 4.0.5
$ ng 服务成功为 日期:2021-03-01T17:18:10.880Z - 哈希:8144cdb2f65873b9a965 - 时间:31537ms ** Angular Live Development Server 正在侦听 localhost:4444,打开浏览器 http://localhost:4444/ ** : 编译成功。
在本地浏览器上,它总是出错,因为, 无法访问此站点。
而我的“curl http://localhost:4444/”成功了。 它与默认端口 4200 完美配合。不确定发生了什么 观察:netstat -tln 输出, 尝试过但没有运气。一项观察“netstat -tln”给出的本地 IP 为“127.0.0.1”,但对于 4200,它是不同的,
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:4200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:4444 0.0.0.0:* LISTEN
通过命令更改端口然后尝试:
ng config projects.(your-project-name).architect.serve.options.port (port-no)
我参考https://github.com/angular/angular-cli/issues/2375找到了解决方案 'ng' 默认设置 n/w 与 127.0.0.0 的接口,我们需要在命令中明确提及“--host 0.0.0.0”,仅此而已:-)
所以实际的命令应该是,
ng serve --host 0.0.0.0 --port 4444