zoukankan      html  css  js  c++  java
  • .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 1018
    组合 母函数 hdu 1171
    石子合并
    hdu 1047
    java 小综合
    java 声音处理
    并查集 1213
  • 原文地址:https://www.cnblogs.com/farmer-y/p/13897914.html
Copyright © 2011-2022 走看看