你知道如何修改ASP.NET Core默认端口吗?常用5种方法实例演示

  • 你知道如何修改ASP.NET Core默认端口吗?常用5种方法实例演示已关闭评论
  • 106 次浏览
  • A+
所属分类:.NET技术
摘要

下面针对 ASP.NET Core 中修改默认端口的五种常用方法的详细示例,分别对应  appsettings.json  配置 Kestrel 的 Endpoint、使用 UseUrls  方法、命令行参数方法、host.json  配置方法和使用 Docker 的方式。

下面针对 ASP.NET Core 中修改默认端口的五种常用方法的详细示例,分别对应 appsettings.json 配置 Kestrel 的 Endpoint、使用 UseUrls 方法、命令行参数方法、host.json 配置方法和使用 Docker 的方式。

方法一:appsettings.json 配置 Kestrel 的 Endpoint

  1. 在 appsettings.json 中添加端口配置:
{   "Kestrel": {     "EndPoints": {       "Http": {         "Url": "http://localhost:5001"       }     }   } }
  1. 在 Startup.cs 中读取配置:
using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection;  public class Startup {     private readonly IConfiguration _configuration;      public Startup(IConfiguration configuration)     {         _configuration = configuration;     }      public void ConfigureServices(IServiceCollection services)     {         // 添加服务配置     }      public void Configure(IApplicationBuilder app, IHostingEnvironment env)     {         // 其他中间件配置          var url = _configuration["Kestrel:EndPoints:Http:Url"];                  // 使用 Kestrel Endpoint         app.Run(async (context) =>         {             await context.Response.WriteAsync($"Hello from {url}!");         });     } }

方法二:UseUrls 方法

在 Program.cs 中使用 UseUrls 方法来指定应用程序的 URL。

using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Hosting;  public class Program {     public static void Main(string[] args)     {         CreateHostBuilder(args).Build().Run();     }      public static IHostBuilder CreateHostBuilder(string[] args) =>         Host.CreateDefaultBuilder(args)             .ConfigureWebHostDefaults(webBuilder =>             {                 webBuilder.UseUrls("http://localhost:5001", "https://localhost:5002"); // 在这里指定端口号                 webBuilder.UseStartup<Startup>();             }); }

方法三:命令行参数方法

通过命令行参数在启动应用程序时指定端口。

dotnet run --urls "http://localhost:5001"

方法四:host.json 配置方法

在项目根目录下创建 hosting.json 文件,指定端口配置。

{   "urls": "http://localhost:5001" }

方法五:使用 Docker 方法

在 Dockerfile 中设置环境变量,然后在 docker-compose.yml 文件中映射端口。

Dockerfile

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 WORKDIR /app COPY bin/Release/netcoreapp3.1/publish/ App/ ENTRYPOINT ["dotnet", "App/YourApp.dll"]

docker-compose.yml

version: '3.4'  services:   web:     build:       context: .       dockerfile: Dockerfile     ports:       - "5001:80"  # 映射容器端口到主机端口 

通过以上五种方法,你可以根据需要选择适合你的项目的方式来修改 ASP.NET Core 应用程序的默认端口。请根据你的需求选择其中一种或多种方法。

 

你知道如何修改ASP.NET Core默认端口吗?常用5种方法实例演示