小编典典

如何指定托管 ASP.NET Core 应用程序的端口?

all

WebHostBuilder在入口点中使用时Main,如何指定它绑定到的端口?

默认情况下,它使用 5000。

请注意,此问题特定于新的 ASP.NET Core API(当前在 1.0.0-RC2 中)。


阅读 136

收藏
2022-04-12

共1个答案

小编典典

在 ASP.NET Core 3.1 中,有 4 种主要方法可以指定自定义端口:

  • 使用命令行参数,通过以下方式启动您的 .NET 应用程序--urls=[url]

    dotnet run –urls=http://localhost:5001/

  • 使用appsettings.json, 通过添加一个Urls节点:

    {
    “Urls”: “http://localhost:5001"
    }

  • 使用环境变量,带有ASPNETCORE_URLS=http://localhost:5001/.

  • 使用UseUrls(),如果您更喜欢以编程方式进行操作:

    public static class Program
    {
    public static void Main(string[] args) =>
    CreateHostBuilder(args).Build().Run();

    public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .ConfigureWebHostDefaults(builder =>
            {
                builder.UseStartup<Startup>();
                builder.UseUrls("http://localhost:5001/");
            });
    

    }

或者,如果您仍在使用 Web 主机构建器而不是通用主机构建器:

public class Program
{
    public static void Main(string[] args) =>
        new WebHostBuilder()
            .UseKestrel()
            .UseContentRoot(Directory.GetCurrentDirectory())
            .UseIISIntegration()
            .UseStartup<Startup>()
            .UseUrls("http://localhost:5001/")
            .Build()
            .Run();
}
2022-04-12