ASP.NET Core配置Kestrel 网址Urls

ASP.NET Core中如何配置Kestrel Urls呢,大家可能都知道使用UseUrls() 方法来配置。

今天给介绍全面的ASP.NET Core 配置 Urls,使用多种方式配置Urls。
让你了解ASP.NET Core Kestrel 的地址设置。
下面我们就来了解如何配置。我将介绍4种方式来配置Urls。

1、UseUrls方法

大家最熟悉的一种也就是使用UseUrls 。下面我们就来实际使用。
UseUrls 方法可以使用多个地址,也可以使用一个地址。
单个网址  UseUrls("http://localhost:5001")

多个网址 UseUrls("http://localhost:5001", "http://localhost:5002", "http://*:5003")

//多个地址 *代表绑定所有本机地址 可以局域网访问,拥有外网ip 就可以外网访问

 

2、配置文件

下面使用配置文件来设置网址。
1).首先在项目中添加一个ASP.NET 配置文件hosting.json,在配置文件中加入server.urls 节点。

  { "server.urls": "http://localhost:5001;http://localhost:5002;http://*:5003"}

2).这里首先需要添加两个引用

  "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0"

  "Microsoft.Extensions.Configuration.Json": "1.0.0"

 3).Main方法添加配置

public static void Main(string[] args)
{
var config = new ConfigurationBuilder()
    .SetBasePath(Directory.GetCurrentDirectory())
    // 这里添加配置文件
    .AddJsonFile(Path.Combine("config", "hosting.json"), true)
    .Build();

var host = new WebHostBuilder()
    .UseKestrel()
    // 添加配置
    .UseConfiguration(config)
    .UseContentRoot(Directory.GetCurrentDirectory())
    .UseIISIntegration()
    .UseStartup<Startup>()
    .Build();

host.Run();
}

4).最后别忘了在project.json中添加输出配置,直接把整个config目录放进去了

"publishOptions": {
  "include": [
    "wwwroot",
    "**/*.cshtml",
    "appsettings.json",
    "web.config",
    "config"
  ]
}

  

3、到项目目录使用命令

dotnet run --server.urls "http://localhost:5001;http://localhost:5002;http://*:5003"

 

4、环境变量

环境变量的名字ASPNETCORE_URLS(过时的名字是:ASPNETCORE_SERVER.URLS)

设置临时环境变量

  linux:export ASPNETCORE_URLS="http://*:5001"

  windows:set ASPNETCORE_URLS="http://*:5001"

设置完之后运行即可
  dotnet xxx.dll

 

posted @ 2017-06-15 21:38  RabbitYi  阅读(3296)  评论(0编辑  收藏  举报