Does ASP.NET need a Windows server?

7

As usual for PHP I always install Debian and Apache, but I want to delve deeper into web development and want to take a look at ASP.NET, out of curiosity I came to doubt whether I'll need a Windows server if I run in one production environment.

Is it necessary to have a Windows server to run this language? I heard that there is a module in Apache that does this, but will it have the same performance?

    
asked by anonymous 21.12.2015 / 11:39

2 answers

12

Classic ASP.Net, the one that emerged from the beginning of .Net is now considered a legacy technology. It will still be supported, but should not receive significant updates. I will not even talk about her then. And it's not a language.

ASP.Net MVC is a newer technology and is now coming out a new version , which is part of a collection of technologies called ASP.Net Core . It is important not to confuse with ASP.Net 4.6 which is classic and has end of line decreed.

ASP.Net MVC depended a little on ASP.Net. In a way it depended on IIS. Actually not so much because there is ASP.Net for Mono running on Linux, so can use Apache . The performance is not great, but still very good. We're talking about using C # which is a static and compiled language, so that counts a lot.

Now there's .Net Core (it's coming out of the oven) running on several platforms and in ASP .Net Core has been redesigned to work well on all platforms. With this new distribution, Microsoft's .Net itself (not an alternative third-party implementation) supports fully and with full support, Linux and MacOS.

The main reason for creating .Net Core is to be able to run ASP.Net Core well on these platforms using the server technology you want.

This abstraction of the application server was obtained by the implementation of OWIN . Today ASP.Net can run without an external server.

Mono tends to be legacy on these platforms in most scenarios. Today if you want to use with Apache ( mod_mono ), it is still needed. There is nothing in .NET that works with it. This may change. There are ways to use the new ASP.Net as self-host plus Nginx .

    
21.12.2015 / 12:06
5

Depends on what specific technologies you are using. The Mono Project provides an Apache module ( .NET ) to allow ASP.net applications on three Windows, Linux, and MAC.

Mono does not support all .NET APIs, but supports WCF.

On performance, I found mod_mono , but it's 2008 and at that time .NET was 6 times faster than mono. View

    
21.12.2015 / 12:04