您在*nix服务器上使用哪个Web服务器进行ASP.NET Core生产?

reg*_*ahn 62 c# asp.net .net-core kestrel-http-server asp.net-core

随着ASP.NET Core现已发布,我想知道Linux和Mac环境的最佳托管选项是什么.是否有正在开发的生产级Web服务器?

我唯一知道的是带有框架的Kestrel.从文档中可以看出,与IIS相比,Kestrel缺少一些功能

在此输入图像描述

Stackoverflow答案表明.NET Core应用程序可以与任何HTTP服务器一起使用.这是否意味着它可以与Apache合作?如果是这样,它会丢失任何功能吗?我的印象是它只适用于基于OWIN的服务器.我错过了什么吗?

tug*_*erk 52

使用红隼,这是前进的方式.请参阅:更改为IIS主机模型.

这是否意味着它可以与Apache合作?

是的,确实这是推荐的方法.但是,永远不要将红隼直接暴露在外面.始终把它放在像nginx,IIS,HAProxy或Apache这样的Web服务器上.关于红隼的更多信息:

使用这些反向代理的一些示例:

  • 如果你必须把Kestrel放在IIS后面,为什么要引入额外的复杂性,为什么不只是使用IIS呢? (16认同)
  • 为什么不建议将Kestrel暴露给外界? (9认同)
  • 来自https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel"出于安全原因,边缘部署需要反向代理(暴露于来自Internet的流量).Kestrel相对较新,尚未完全抵御攻击.这包括但不限于适当的超时,大小限制和并发连接限制." (2认同)