Deploying .Net Web Application to non-windows server Deploying .Net Web Application to non-windows server unix unix

Deploying .Net Web Application to non-windows server


Does the server need to be running windows?

No

Does the server need to have the .Net framework installed on it? (is this possible with non-windows servers?)

Not necessary, you could use Mono

Does the server need to have IIS installed on it? (is this possible with non-windows servers?)

No, works with Apache too

So basically if you want to run a .NET application on non Windows server you will have to use Mono, but as @Oded pointed out in the comments section there are porting caveats - you need to make sure that you are not using windows specific tech (such as WMI and GDI+) and that your code is portable (no hard coded path separators, use of Environment.NewLine instead of hard coded line terminators), no P/Invoke and COM interop, the same restrictions apply of course to any third party assemblies you might be using, etc...