今天以下文章來源于NET技術(shù)問答 ,作者Stackoverflow NET技術(shù)問答 精選 StackOverFlow 上的.NET 相關(guān)技術(shù)問題解答 咨詢區(qū)我是 ASP.NET Core 方面是新人,我發(fā)現(xiàn)程序默認的端口是 5000,因為要正式發(fā)布,所以希望把程序的端口改成 80,請問我該如何配置自定義端口呢 ? 回答區(qū)在 ASP.NET Core 3.1 中,我總結(jié)了下,大概有 4 種方式可以修改默認端口。 - 使用命令行模式,也就是在啟動的時候通過
--urls 去指定。
dotnet run --urls=http://localhost:5001/
- 在
appsettings.json 中去指定,添加一個 Urls 節(jié)點即可。
{ "Urls": "http://localhost:5001" }
ASPNETCORE_URLS=http://localhost:5001/
- 使用
UseUrls() ,如果你喜歡硬編碼或者想把 http 隱藏在內(nèi)存中。
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/"); }); }
如果你的項目中使用的是原始的 WebHostBuilder 的話,參考下面代碼去配置。 public class Program { public static void Main(string[] args) => new WebHostBuilder() .UseKestrel() .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup<Startup>() .UseUrls("http://localhost:5001/") .Build() .Run(); }
點評區(qū)沒想到在 ASP.NET Core 中配置一個自定義端口,竟然有 4 種方法,不過小編喜歡用第一種方式,這樣就方便我用 docker 自動化部署時在 command 參數(shù)中自動指定。
|