NetCore 启动地址配置详解
背景 程序在发布部署时候,设置环境 ASPNETCORE_URLS 不生效,也没在代码里使用 UseUrls("xxxx") ,启动一直是 http://localhost:5000 .最后测试发现只有在 appsettings.json 中配置 urls 才生效,网上找了半天资料也没看到有什么问题。 最终翻看源代码,发现是在 StartUp 中的 Configure 替换了全局 IConfiguration 导致。 平时开发大体知道程序启动时候端口启用顺序是 UseUrls("xxx") > 环境变量 > 默认,具体是怎么确定使用哪个配置的,没找到资料,所有才有了本文。 启动地址配置的几种方式介绍 环境变量 ASPNETCORE_URLS #windows set ASPNETCORE_URLS=http://localhost:6000 #linux export ASPNETCORE_URLS=http://localhost:6000 UseUrls("http://localhost:6000") appsettings.json 新增 urls 或者 server.urls 配置 { "urls":"http://localhost:6000;http://localhost:6001", "server.urls":"http://localhost:6000