Apache webserver上的vNext

时间:2015-02-20 14:55:05

标签: asp.net asp.net-core dnx .net-core

我一直在使用vNext,并让示例项目正在运行。我创建了一个Ubuntu VM,安装了所需的软件包,并使用k run(控制台应用程序)和k kestrel(MVC应用程序)运行它。

现在,进入下一步:在专用的Web服务器上运行多个项目。 Kestrel(至少现在)只是一个用于vNext的简单开发网络服务器。它将发展成为一个成熟的网络服务器似乎很小。

因此,我希望在Apache上运行该东西。我想mod-mono会在某个地方发挥作用。但是,目前我还不认为它支持最新的vNext框架。另一方面,我想我们在某个地方需要KRE。

有任何新闻我们很快就会在Apache上运行ASP.NET项目吗?有人设法做到了吗?

我对跨平台.NET应用程序的想法非常着迷。我现在的雇主在使用跨平台和开源软件的项目上投入了大量资金。我想提前获得一些知识,并尝试完全迁移到Linux Web服务器而不是Windows服务器。

谢谢!

1 个答案:

答案 0 :(得分:3)

我很高兴看到有很多人试图让vnext在Windows环境之外运行并运行:)

当然你对红隼是正确的。它可能最终会像一个简单的Web服务器一样,就像它现在在node.js Hello World教程中一样。您可以尝试将其用作生产环境,方法是在Web服务器的后台运行Running K Kestrel in the background,然后通过Apache代理将请求传递给kestrel

VirtualHost示例代理对kestrel的请求在*:5004

上启动
<VirtualHost *:80>
ServerName example.com:80

ProxyRequests On

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyPreserveHost Off

ProxyPass / http://localhost:5004
ProxyPassReverse / http://localhost:5004

</VirtualHost>

但我不推荐以上解决方案。 kestrel存在一些问题,阻止您在tty之外发送输出,因此无法在启动时使用启动脚本运行它。因此,只要您的服务器保持在线状态,您启动的网站就会持续:)

我建议使用Docker。它是Microsoft支持的ASP.NET包装器。你可以在这个阶段更好地利用它。

以下是更多信息

http://blogs.msdn.com/b/webdev/archive/2015/01/14/running-asp-net-5-applications-in-linux-containers-with-docker.aspx