【发布时间】:2018-09-28 10:23:44
【问题描述】:
我正在尝试使用 kestrel 创建 Web 应用程序。在这篇文章https://docs.microsoft.com/pl-pl/aspnet/core/fundamentals/servers/kestrel?tabs=aspnetcore2x 中有解释如何使用红隼(代码如下):
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseKestrel(options =>
{
options.Listen(IPAddress.Loopback, 5000);
})
.Build();
IIS 默认在 49950 端口启动,但在 5000 端口上没有任何监听。为什么它不起作用?我错过了什么吗?我想强制红隼仅从代码中监听 5000(不干扰其他项目文件)。此外,UseUrls 也是不可接受的,因为缺少 SSL 支持。我怎样才能做到这一点?
【问题讨论】:
-
您是否从 Visual Studio 运行应用程序?您需要更改启动应用程序以进行调试。在说 IIS Express 的菜单栏中,单击它旁边的小下拉按钮并选择您的项目名称。这会将程序作为控制台应用程序运行并在您指定的端口上托管 Kestrel
-
是的,这行得通 :) 谢谢!顺便说一句,为什么 IIS 启动不会在我指定的端口上启动红隼?这需要在某个地方进行更改吗?
-
不确定缺少 SSL 支持是什么意思,Kestrel 2.x 确实支持 SSL 和节流(现在也可以用作面向 Internet 的应用程序 - 不建议使用 Kestrel 1.x做缺乏成熟的功能)
标签: c# asp.net-core kestrel-http-server