Bryan Hogan님이 Kestrel 포트를 설정하는 다양한 방법에 대해 설명합니다.
launchSettings.json
개발환경에서 프로파일을 선택해서 실행할 때 쓰는 방식입니다. 최종 배포 실행시에는 영향을 주지 않습니다.
...
"applicationUrl": "https://localhost:6001;http://localhost:6000",
...
appsettings.json
Kestrel 실행 시 동작할 포트를 이곳에서 지정할 수 있습니다.
"Kestrel": {
"Endpoints": {
"Https": {
"Url": "https://*:8001"
},
"Http": {
"Url": "http://*:8000"
}
}
}
프로파일 설정보다 이 설정이 더 우선됩니다. 개발환경에서 실행할 경우 프로파일의 포트와 달라 웹브라우저가 실행되지 않는 등의 불편함이 생깁니다. 개발환경에서 적용되는 appsettings.Development.json
설정을 통해 이를 해결할 수 있습니다.
IWebHostBuilder.UseKestrel
소스코드에서 UseUrls()
로 적용할 수 있습니다.
var app = builder.Build();
builder.WebHost.UseUrls("http://*:9000;https://*:9001");
WebApplication.Urls.Add
var app = builder.Build();
app.Urls.Add("http://*:7000");
app.Urls.Add("https://*:7001");
명령줄
dotnet run --urls "http://*:11000;https://*:11001"