在基于Linux的服务器上运行ASP.Net

对于具有Java背景的开发人员,我也有兴趣使用ASP.NET工具/平台探索软件开发。

Java Web应用程序(.jsp和servlet)可以在许多服务器平台上运行。

:.NET Web应用程序能够在基于Linux的服务器上运行吗? 考虑到无法使用Windows服务器托管Web应用程序的情况。


这取决于您正在使用的特定.NET技术。 Mono项目提供了一个运行ASP.NET网站的Apache模块(mod_mono),并且从我收集的内容来看,它运行良好。

单声道不支持所有的.NET API,但是 - 特别是WPF(也可能是WCF,我不记得) - 但它确实为框架的其他许多方面提供了很好的支持。

如果您从头开始,特别想要定位非Windows服务器,那么确保您的项目与Mono协同工作是一个很好的目标。 但是,如果您需要特定的API或Mono不支持的语言功能,则需要使用Windows服务器进行部署。 这应该是最前面的设计时间/建筑选择。


所以我知道这是一个老问题,但我认为它可以经得起更新的答案。

微软已经正式发布了asp.net vnext及其开放源代码和可部署的Linux和Mac。 它的全部仍然非常新,但依赖于最新版本的单声道,因此目前需要您编译mono-framework但我怀疑随着各种Linux发行版发布单声道的更新版本,它会更容易访问。 这是一个如何设置指南

这些信息可能有些不稳定,更新是由于更改。

更新ASP.NET CORE 11/10/2017

  • asp.net vnext现在被称为asp.net核心。
  • asp.net核心在Microsoft中被视为高优先级,部分原因是它在微服务架构以及码头和容器技术上的使用
  • 由于.net标准2.0,它与现有的.net库变得更加兼容。
  • 与其他技术堆栈(如go和node.js)相比,它表现良好

  • 您可能需要考虑本指南,该指南可帮助Windows开发人员将其代码移植到Mono / Linux:

    指南:移植ASP.NET应用程序 - 单声道

    链接地址: http://www.djcxy.com/p/15935.html

    上一篇: Running ASP.Net on a Linux based server

    下一篇: Best way to make Linux Web Services?