红隼主持基础知识

Ste*_*n C 19 asp.net-core

我正在开发一个ASP.NET网站,我很感兴趣使用vNext托管我的网站而不管主机.当我开始寻找一些基本的托管功能时,我似乎认为它们可能无法开发.有谁知道在所有平台上使用Kestrel进行vNext托管是否支持以下功能:

  1. SSL托管
  2. 记录HTTP请求(如IIS)
  3. IIS模块(我猜不是,我只需要重写url重定向到HTTPS)

Eil*_*lon 12

正如KestrelHttpServer repo所述:

此repo包含基于libuv的ASP.NET vNext开发Web服务器.

因为它目前被定为开发服务器,所以某些功能可能永远不会进入.例如,IIS具有控制IP地址映射到主机名的功能,带宽/内存/ CPU等的限制.开发服务器通常不会有这样的功能.

对于IIS模块,我可以轻松地说它肯定不会支持它们,因为它们是特定于IIS的,而Kestrel与IIS无关.

关于SSL托管,这当然是一个有趣的可能性,但目前还不在计划中.即使对于开发Web服务器(IIS Express支持它),这肯定会有用.

更新: repo文档已于9月1日更新,现在它显示为:

此repo包含基于libuv的ASP.NET Core的Web服务器.

  • 我们(我在ASP.NET团队中)正在考虑让Kestrel为生产工作,但编写一个生产服务器的工作量至少比仅支持dev的服务器高出几个数量级. (7认同)
  • @Eilon - 尽管缺乏SSL或其他功能,Kestrel的原始性能是否适合生产使用?我理所当然地认为任何现代的"自托管"应用程序(例如Node,Go等)都将由Nginx或Apache或其他任何代理.更重要的问题是ASP.NET 5的自托管位是否可以扩展,无论如何?Kestrel将其描述为"开发服务器"的文档让我很谨慎......究竟什么是Linux上的ASP.NET 5的生产托管故事? (4认同)
  • 使用nginx作为反向代理的@ppumkin绝对是向任何Web服务器添加功能的好方法. (2认同)
  • @BenBurns目前没有更新.很可能像其他平台上存在的其他"迷你网络服务器"一样,建议使用反向代理,例如[ARR](http://www.iis.net/downloads/microsoft/application-request-路由)或[nginx](http://nginx.org/)在它面前处理诸如SSL和其他保护之类的事情. (2认同)
  • @StevePerkins我们认为最终答案将是Kestrel.但是,我们无法按照自己的意愿花费太多时间,因此提出任何保证或建议都有点困难.Kestrel和Node都依赖于`libuv`,但除此之外,两台服务器当然不同.直到ASP.NET团队(我的团队)能够对其进行严格的性能和压力测试,才能做出承诺. (2认同)

dru*_*uss 5

你可以在nginx服务器后面运行kestrel.它将为您提供SSL,虚拟主机和其他功能.但是红隼仍然非常不稳定,因此在生产中使用它之前应该三思而后行.这篇文章包含如何配置nginx以将请求传递给kestrel的说明