将.Net Web应用程序部署到非windows服务器

将.Net Web应用程序部署到非windows服务器,.net,asp.net,windows,linux,unix,.net,Asp.net,Windows,Linux,Unix,我的问题是将.Net web应用程序部署到特定服务器需要什么以及有哪些限制 服务器是否需要运行windows 服务器是否需要安装.Net framework?(这是否适用于非windows服务器?) 服务器是否需要安装IIS?(这是否适用于非windows服务器?) 我提出这个问题的原因是,我们希望创建并打包一个可以部署到客户服务器上的应用程序,但是我们希望能够为使用windows、Linux、Unix等服务器的客户提供服务 我需要知道这些限制以及可用的解决方法 服务器是否需要运行 窗户 没有

我的问题是将.Net web应用程序部署到特定服务器需要什么以及有哪些限制

服务器是否需要运行windows

服务器是否需要安装.Net framework?(这是否适用于非windows服务器?)

服务器是否需要安装IIS?(这是否适用于非windows服务器?)

我提出这个问题的原因是,我们希望创建并打包一个可以部署到客户服务器上的应用程序,但是我们希望能够为使用windows、Linux、Unix等服务器的客户提供服务

我需要知道这些限制以及可用的解决方法

服务器是否需要运行 窗户

没有

服务器是否需要.Net 框架安装在它上面吗?(这是吗 非windows服务器是否可能?)

没必要,你可以用

服务器是否需要有IIS 安装在它上面吗?(这可能吗 是否使用非windows服务器?)

不,它也适用于Apache


因此,如果您想在非Windows服务器上运行.NET应用程序,基本上必须使用
Mono
,但正如@Oded在评论部分指出的,有一些移植注意事项-您需要确保您没有使用Windows特定的技术(如WMI和GDI+),并且您的代码是可移植的(无硬编码路径分隔符,使用
Environment.NewLine
代替硬编码行终止符),无P/Invoke和COM互操作,相同的限制当然适用于您可能正在使用的任何第三方程序集,等等。

不要忘了有移植注意事项-您需要确保您没有使用windows特定技术(如WMI),并且您的代码是可移植的(无硬编码路径分隔符,使用
环境。换行符
代替硬编码行终止符)等。。。