• .NetCore3.1 配置Kestrel端口的几种方式及优先级


    Kestrel 是一个跨平台的适用于 ASP.NET Core 的 Web 服务器内置在ASP.NET Core 项目中。我们使用vs2019新建一个ASP .Net Core 应用程序,可以在launchSettings.json看到Kestrel默认的地址"https://localhost:5001;http://localhost:5000",

    下面我们来了解 自定义Kestrel 服务器端口的几种方式。

    1、修改launchSettings.json中的applicationUrl地址

    也可以项目右键-->属性-->调试-->web服务器设置 修改 应用URL

    2、使用命令行

    需要在启动程序Program.cs构建主机方法CreateHostBuilder中加AddCommandLine(args) ,代码:

    复制代码
    public static IHostBuilder CreateHostBuilder(string[] args) =>
                Host.CreateDefaultBuilder(args)
                .ConfigureAppConfiguration(builder =>
                {
                    builder.AddCommandLine(args);
                })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    复制代码

    然后命令行到对应dll所在文件夹

    dotnet xxxx.dll --urls "http://*:5100"//可以多个也可以一个 多个以;隔开 如 "http://*:5100;http://*:5101"

     或者项目根目录

    dotnet run --urls "http://*:5100"

    3、代码里UseUrls

    在ConfigureWebHostDefaults中设置启动默认值

    复制代码
    public static IHostBuilder CreateHostBuilder(string[] args) =>
                Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseUrls("http://*:5101");
                    webBuilder.UseStartup<Startup>();
                });
    复制代码

    直接Kestrel运行程序,或者命令运行

    4、使用配置文件

    在appsettings.json里添加设置 "urls": "http://*:5102"

    然后启动时使用这个配置文件的配置

    复制代码
    public static IHostBuilder CreateHostBuilder(string[] args) =>
                Host.CreateDefaultBuilder(args)
                .ConfigureAppConfiguration(builder =>
                {
                    builder.AddJsonFile("appsettings.json", optional: true);
                })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    复制代码

    把这几种方式都配置好,

    使用命令行,会优先使用命令行的urls参数,不带urls参数的时候会使用UseUrls中配置的端口地址,如果没有配置端口则会使用配置文件

    这三种方式配置,优先级是

    使用命令行>UseUrls>json配置文件>launchSettings applicationUrl

  • 相关阅读:
    hdu.1226.超级密码(bfs)
    zstu.2512. Moving Tables(贪心)
    zoj.3868.GCD Expectation(数学推导>>容斥原理)
    acdream.LCM Challenge(数学推导)
    acdream.Triangles(数学推导)
    acdream.A Very Easy Triangle Counting Game(数学推导)
    acdream.Bet(数学推导)
    acdream.郭式树(数学推导)
    EntityFramework(转自wiki)
    石墨烯(转自wiki)
  • 原文地址:https://www.cnblogs.com/farmer-y/p/13897914.html
Copyright © 2020-2023  润新知