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