They are essential to the success of your web projects. Here are 5 web servers that are worth trying, if not adopting, at the very least. Over 80% of applications and websites are hosted by open source web servers. Here are 5 that might interest you if you want to get started in this section. If LAMP (Linux, Apache, MySQL, PHP) or LEMP (Linux, Nginx, MySQL, PHP) stacks are certainly the easiest to use initially, other solutions are possible.
Apache HTTP Server, the leader
Apache Server HTTP software often referred to as httpd or more simply Apache is over 20 years old. This durability can be explained by impressive popularity: 52% of websites in the world are hosted on a server that uses Apache. Above all, if we often come across Apache on Linux distributions, the product is available on OS X and Windows.
Apache is available under the Apache v2 license. This web server uses a modular and scalable architecture, so as to extend the functionalities when needed, such as load balancing for example. Note that since version 2.4, Apache supports the HTTP / 2 protocol thanks to the mod_http2 module. Finally, it should be said that the longevity of this software gives it important documentation as well as the integration of other software.
Nginx, the simultaneous connection specialist
The development of Nginx started in 2002 under the auspices of Igor Sysoev, and the first public version dates from 2004. Nginx answers the question of the support of multiple simultaneous connections on a web server, known as the C10K problem.
With 30% of websites running on Nginx, there is no doubt that this mission is fulfilled. For this purpose, Nginx relies on an asynchronous event architecture, which makes it possible to manage massive simultaneous sessions. Note that administrators also recognize Nginx because of its moderate use of resources as well as its ability to scale easily. Nginx is released under a BSD license, and can be deployed as a web server but also as a proxy server or as a load balancer.
Apache Tomcat, Java origin
Apache Tomcat is an open-source Java servlet container that functions as a web server by extending the capabilities of a server. These are the Java alternatives to technologies such as PHP and ASP.NET. The codebase for Tomcat was donated by Sun Microsystems to the Apache Software Foundation in 1999. Just under 1% of all websites use Apache Tomcat.
Apache Tomcat is released under the Apache v2 license and is typically used to run Java applications. It can however be extended to the role of a normal web server using Coyote. Apache Tomcat is often ranked among other open-source Java application servers like JBoss, Wildfly, and Glassfish.
The difference between Node.js and other web servers is that it is primarily a cross-platform runtime environment for building network applications. Node.js offers an event architecture capable of handling asynchronous inputs and outputs. This optimizes the speed and scalability of Web applications, ideal qualities for real-time communication applications and online video games.
Lighttpd, the light weight
Lighttpd has been around since 2003. It is used by approximately 0.1% of websites and is distributed under the BSD license. Lighttpd differs from other web servers by its low memory footprint, low CPU load, and speed optimizations. It uses event-driven architecture, is optimized for a large number of parallel connections, and supports FastCGI, SCGI, Auth, Output-compression, URL rewriting among others. Lighttpd is a popular web server for Catalyst or the Ruby on Rails framework.