依赖于微软文档:
Kestrel 可以单独使用,也可以与反向代理服务器(例如 IIS、Nginx 或 Apache)一起使用。反向代理服务器接收来自 Internet 的 HTTP 请求,并在进行一些初步处理后将它们转发到 Kestrel。
如果没有 Kestrel 或自定义服务器实现,则无法使用 IIS、Nginx 和 Apache。 ASP.NET Core 被设计为在自己的进程中运行,以便它可以跨平台保持一致的行为。
但是当我运行 Visual Studio 2017 时,始终运行 IIS Express。那么如何单独依赖 kestrel(如果可能的话)取决于 MS 文档。
您可以从VS2017中的工具栏更改启动应用程序
在上面的示例中,Visual Studio 将在 IIS Express(带有勾号的项目)中托管我的应用程序。如果您想将其作为 Kestrel 托管应用程序运行,那么我会选择WebApplication2
从下拉。现在,当我启动应用程序时,它将从命令提示符窗口运行。
如果您使用 .NET Core 2.0 那么您的Program.cs
文件应该看起来像这样:
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build();
}
}
幕后(在Build()
方法)ASP.NET Core 将添加调用以确保您的应用程序将在 IIS 和 Kestrel 中运行,而无需您进行任何更改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)