且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

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

更新时间:2022-11-05 18:20:58

在 ASP.NET Core 3.1 中,有 4 种主要的方式来指定自定义端口:

In ASP.NET Core 3.1, there are 4 main ways to specify a custom port:

  • 使用命令行参数,通过 --urls=[url] 启动您的 .NET 应用程序:
  • Using command line arguments, by starting your .NET application with --urls=[url]:
dotnet run --urls=http://localhost:5001/

  • 使用 appsettings.json,添加一个 Urls 节点:
    • Using appsettings.json, by adding a Urls node:
{
  "Urls": "http://localhost:5001"
}

  • 使用环境变量,ASPNETCORE_URLS=http://localhost:5001/.
  • 使用 UseUrls(),如果您更喜欢以编程方式执行此操作:
    • Using environment variables, with ASPNETCORE_URLS=http://localhost:5001/.
    • Using UseUrls(), if you prefer doing it programmatically:
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/");
            });
}

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

Or, if you're still using the web host builder instead of the generic host builder:

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