如何修改 asp.net core 5 程序的默认端口号?

Posted dotNET跨平台

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何修改 asp.net core 5 程序的默认端口号?相关的知识,希望对你有一定的参考价值。

咨询区

  • ja73

在本地开发环境下,我知道可以通过修改 launchSettings.json 文件中的端口号来实现端口切换。

"WebApplication1": 
      "commandName": "Project",
      "launchBrowser": true,
      "launchUrl": "weatherforecast",
      "environmentVariables": 
        "ASPNETCORE_ENVIRONMENT": "Development"
      ,
      "applicationUrl": "https://*:8081;http://*:8080"
    

但是将程序发布之后,我发现它一直监听的是 5000 端口,请问我如何在 生产环境下做 port 的修改,我试了下 UseUrls 貌似不起效果。

public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureServices((hostContext, services) =>
                
                    services.AddHostedService<Worker>();
                ).UseWindowsService()
                .ConfigureWebHostDefaults(webBuilder =>
                
                    webBuilder.UseStartup<Startup>()
                    .UseUrls("http://*:8080","https://*:8081");
                )
            .UseSerilog();

回答区

  • ja73

UseUrls 是可以的,只不过你把它的顺序弄反了,将 webBuilder.UseStartup<Startup>().UseUrls("http://*:8080","https://*:8081") 对调一下即可, 希望对你有用。

public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureServices((hostContext, services) =>
                
                    services.AddHostedService<Worker>();
                ).UseWindowsService()
                .ConfigureWebHostDefaults(webBuilder =>
                
                    webBuilder.UseUrls("https://*:8081", "http://*:8080");
                    webBuilder.UseStartup<Startup>();
                )
            .UseSerilog();
  • Stephen LAI

可以在程序启动的时候通过命令行 --urls 参数去配置,参考如下:

dotnet run --urls "http://localhost:5100;https://localhost:5101"

或者

dotnet /Product/Full/Path/Product.dll --urls "http://localhost:5100;https://localhost:5101"

当然你一定要操控 LaunchSettings.json 文件的话,也是可以实现的,配置 iisSettings 节点即可。


  "iisSettings": 
  "iisExpress": 
  "applicationUrl": "http://localhost:8080",
  "sslPort": 96085<== Change_This as you wish
  

点评区

其实修改 asp.net core 程序的默认端口的方法特别多,可以通过 配置文件硬编码命令行环境变量 等多种方式,我在项目开发中更多的使用 命令行方式,毕竟是写到 dockerfile 中的,很方便。

以上是关于如何修改 asp.net core 5 程序的默认端口号?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ASP.NET CORE 5.0 MVC 中将登录设置为默认路由

如何让asp.net core mvc发布时候不编译cshtml视图

如何在 ASP.NET Core 中设置默认区域?

如何在 ASP.NET Core 5 MVC (.NET 5) 中获取记录的用户数据?

更改 ASP.Net Core 5 中的默认页面

[Asp.Net Core]MVC_Razor布局