4

我希望我的项目在 Visual Studio 中使用 IIS Express 和 Kestrel 使用“IIS Express”或“Web”开始按钮在特定端口上启动。

默认情况下,launchSettings.json 文件包含 IIS Express 的特定端口号。但是,Kestrel 总是在默认端口 5000 上启动。如何让 Kestrel 也启动在与 IIS Express 相同的端口上?

启动设置.json

{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:5020/",
      "sslPort": 44320
    }
  },
  "profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "environmentVariables": {
        "Hosting:Environment": "Development"
      }
    },
    "web": {
      "commandName": "web",
      "environmentVariables": {
        "Hosting:Environment": "Development"
      }
    }
  }
}

project.json 提取

{
    ...
    "commands": {
        "web": "Microsoft.AspNet.Server.Kestrel"
    },
    ...
}

我尝试将 project.json 中的 web 命令更改为:

"web": "Microsoft.AspNet.Server.Kestrel  --server.urls http://localhost:5020"

但是,这会完全停止以 IIS Express 启动的站点。

4

0 回答 0