文章内容
2022/12/30 16:42:46,作 者: 黄兵
asp.net core 修改默认端口
最近服务器部署多个 ASP.NET Core 应用,由于 ASP.NET Core 的默认应用端口是 5000,部署多个 ASP.NET Core 会导致端口冲突,所以需要重新设置默认端口。
Projram.cs 文件内容如下:
using Jp.Api.Management.Configuration;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Serilog;
using Serilog.Events;
using System;
using System.Threading.Tasks;
namespace Jp.Api.Management
{
public class Program
{
public static void Main(string[] args)
{
Console.Title = "JP Project - Api Management";
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", LogEventLevel.Information)
.MinimumLevel.Override("System", LogEventLevel.Information)
.MinimumLevel.Override("Microsoft.AspNetCore.Authentication", LogEventLevel.Information)
.Enrich.FromLogContext()
.WriteTo.File(@"jpProject_sso_log-.txt", rollingInterval: RollingInterval.Day, retainedFileCountLimit: 5)
.WriteTo.Console()
.CreateLogger();
var host = CreateHostBuilder(args).Build();
Task.WaitAll(DatabaseChecker.EnsureDatabaseIsReady(host.Services.CreateScope()));
host.Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.ConfigureLogging(builder =>
{
builder.ClearProviders();
builder.AddSerilog();
});
webBuilder.UseStartup<Startup>();
});
}
}
通过上面的代码可以看出,只需要传入一个参数,就可以重新定义 ASP.NET Core 的默认端口:
也就是这段代码:
var host = CreateHostBuilder(args).Build();
我们在 Ubuntu 上部署 ASP.NET Core 应用,使用的是 Ubuntu 服务,所以具体配置如下:
[Unit] Description=Management .NET Web API App running on Ubuntu [Service] WorkingDirectory=/var/publish/api_management ExecStart=/usr/bin/dotnet /var/publish/api_management/Jp.Api.Management.dll Restart=always # Restart service after 10 seconds if the dotnet service crashes: RestartSec=10 KillSignal=SIGINT SyslogIdentifier=dotnet-management User=www-data Environment=ASPNETCORE_ENVIRONMENT=Production Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false Environment=urls=http://*:5002 [Install] WantedBy=multi-user.target
最主要还是这一行:
Environment=urls=http://*:5002
我们将其改成 5002 端口,就可以避免端口冲突了。
参考资料:
1、你需要知道的这几种 asp.net core 修改默认端口的方式
黄兵个人博客原创。
转载请注明出处:黄兵个人博客 - asp.net core 修改默认端口
评论列表