.NET6 修改ASP.NET Core站点默认端口号的三种方式

[删除(380066935@qq.com或微信通知)]

更好的阅读体验请查看原文:https://mp.weixin.qq.com/s?__biz=MzI2NDE1MDE1MQ==&mid=2650846962&idx=1&sn=c855e536af2a20d9d79d1abc248ee576

之前用控制台程序改造了一个ASP.NET API站点,开发环境启动的默认端口号是5000,这与其它的站点冲突了。但这个站点没有默认的launchSettings.json文件,怎么办?于是查询了官网,有如下几种修改默认端口号的方式

1 、拷贝其它站点的launchSettings.json文件及它的文件夹到该站点修改。

launchSettings.json文件是ASP.NET Core项目中使用的配置文件,用于设置在不同环境下(如开发环境或生产环境)运行应用程序时的应用程序设置。该文件通常位于项目的Properties文件夹中,包含一个JSON对象,其指定了控制应用程序行为的多个不同设置。这里我们只需要设置开发环境的url地址。

这是配置的片段代码,我们这里把它的端口号改为5189

    "http": {      "commandName": "Project",      "dotnetRunMessages": true,      "launchBrowser": true,      "applicationUrl": "http://localhost:5189",      "environmentVariables": {        "ASPNETCORE_ENVIRONMENT": "Development"      }    }

2、appsettings.json配置方法

其实在appsettings.json里也可以修改默认的端口,主要是配置Kestrel节点下终结点的默认url,片段代码如下:

  "Kestrel":{    "Endpoints": {      "Https": {        "Url": "https://*:9001"      },      "Http": {        "Url": "http://*:9000"      }    }  }

3、在Program.cs使用代码修改

可以在Program的组件和中间件配置默认的url,但小编不推荐,这样做写死了不便于维护,尤其是在生产环境。方法有三种:

1)UseUrls
这种方式可以设置单个和多个,具体代码设置如下
builder.WebHost.UseUrls("https://*:9001");//单个设置builder.WebHost.UseUrls(new[] { "http://*:9000", "https://*:9001" });
2) UseKestrel 
利用webhost下的组件配置。
builder.WebHost.ConfigureKestrel(options => options.ListenLocalhost(8090, opts => opts.Protocols = HttpProtocols.Http1));
3)app.Urls.Add
这个是.NET6以上版本新增加的方式,利用中间件添加。
app.Urls.Add("http://localhost:9000");

结语
本文讲述了.NET6 修改ASP.NET Core站点默认端口号的三种方式,推荐使用配置文件的方法来修改端口号。当然如果在开发环境,如果用命令启动,可用用命令的方式来修改启动的端口号,缺点是每次启动都得添加。希望本文对你有所收获,欢迎留言和点赞。