部署时如何控制kestrel端口?
How to control the kestrel port during deployment?
在开发过程中,我使用 launchSettings.json 文件控制 http 和 https 端口,如下所示:
在部署到生产期间使用相同的方法来控制 kestrel 端口是否正确?或者我是否需要在 appsettings.json 或任何其他文件中进行任何端口配置?
因为launchSettings.json
为开发环境工作Development and launchSettings.json
您可以通过多种方式在 Kestrel endpoints 中为生产环境设置端口
指定 URLs 使用:
ASPNETCORE_URLS
环境变量。
使用 dotnet
和 --urls
command-line 参数。
dotnet yourdll.dll --urls http://+:2222
UseUrls
扩展方法。
urls
主机配置密钥。
如果我们要设置 Kestrel 端点按照节点设置 URL 为您的项目应用程序设置。
Kestrel / EndPoints / Http / Url
{
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://+:2222"
}
}
}
}
备注
但我建议您添加Nginx
或Certbot
作为反向代理,而不是设置端口并暴露给外部连接。
在开发过程中,我使用 launchSettings.json 文件控制 http 和 https 端口,如下所示:
在部署到生产期间使用相同的方法来控制 kestrel 端口是否正确?或者我是否需要在 appsettings.json 或任何其他文件中进行任何端口配置?
因为launchSettings.json
为开发环境工作Development and launchSettings.json
您可以通过多种方式在 Kestrel endpoints 中为生产环境设置端口
指定 URLs 使用:
ASPNETCORE_URLS
环境变量。使用
dotnet
和--urls
command-line 参数。dotnet yourdll.dll --urls http://+:2222
UseUrls
扩展方法。urls
主机配置密钥。
如果我们要设置 Kestrel 端点按照节点设置 URL 为您的项目应用程序设置。
Kestrel / EndPoints / Http / Url
{
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://+:2222"
}
}
}
}
备注
但我建议您添加Nginx
或Certbot
作为反向代理,而不是设置端口并暴露给外部连接。