自1991年第一台Web服务器发布以来,这是一段漫长的旅程。相当长一段时间,Apache是唯一值得一提的Web服务器。然而,随着时间的推移,其他开源Web服务器也开始受到关注。
在本指南中,我们将介绍一些最好的开源Web服务器。
1. Apache HTTP服务器
Apache HTTP服务器,俗称Apache或httpd在基于Red Hat的发行版中是由Apache软件基金会开发的免费开源Web服务器,遵循Apache许可证第2版。
发布于1995年,Apache已经取得了长足的发展,成为最受欢迎和广泛使用的Web服务器之一,为超过23.04%的所有网站提供动力。
Apache是用C语言编写的,由于其大量扩展Web服务器功能的模块,是一个高度可定制的Web服务器。
这些模块包括用于缓存的mod_file_cache,提供文件上传和下载的mod_ftp,支持SSL/TLS加密协议的mod_ssl等等。
此外,由于其丰富的模块集,Apache 提供了多协议支持,例如 IPv4 和 IPv6 支持以及常用的 HTTP、HTTP/2 和 HTTPS 协议。
Apache 还提供了 虚拟主机支持,允许您托管多个域名或网站。通过配置虚拟主机,单个服务器可以轻松地托管多个域名,而无需任何复杂性。您可以拥有 example.com、example.edu、example.info 等等。

学习如何在 Linux 发行版上安装 Apache web 服务器,请使用以下指南。
2. Nginx Web 服务器
发音为Engine-X的Nginx是一个开源的高性能健壮的Web服务器,同时还兼具负载均衡器、反向代理、IMAP/POP3代理服务器和API网关的功能。
最初由Igor Sysoev于2004年开发,Nginx已经逐渐流行起来,超越了竞争对手,成为最稳定和可靠的Web服务器之一。
Nginx以其低资源消耗、可扩展性和高并发性而著称。实际上,当正确调整后,Nginx可以以极低的CPU利用率处理高达500,000次请求/秒。因此,它是托管高流量网站的理想Web服务器,并且明显优于Apache。
使用Nginx运行的知名网站包括LinkedIn、Adobe、Xerox、Facebook和Twitter等。
Nginx配置精简,易于调整,就像Apache一样,它支持多种协议、SSL/TLS支持、基本HTTP身份验证、虚拟主机、负载平衡和URL重写等功能。目前,Nginx占据了托管的所有网站的33.6%的市场份额。

学习如何在Linux发行版上安装NginxWeb服务器,请参考以下指南。
3. Lighttpd Web服务器
Lighttpd是一个免费开源的Web服务器,专为速度敏感的应用程序而设计。与Apache和Nginx不同,它的占用空间非常小(小于1 MB),并且非常节省服务器资源,如CPU利用率。
根据BSD许可证分发,Lighttpd原生运行在Linux/Unix系统上,但也可以安装在Microsoft Windows上。它因其简单性、易于设置、性能和模块支持而受欢迎。
Lighttpd的架构经过优化,能够处理大量并行连接,这对于高性能的Web应用程序至关重要。该Web服务器支持FastCGI、CGI和SCGI,用于与Web服务器进行程序接口交互。
它还支持用各种编程语言编写的Web应用程序,特别关注于PHP、Python、Perl和Ruby。
其他功能包括SSL/TLS支持,使用mod_compress模块进行HTTP压缩,虚拟主机和对各种模块的支持。

通过以下指南学习如何在Linux发行版上安装Lighttpd Web服务器。
4. Apache Tomcat
Apache Tomcat 是一个开源的Java servlet引擎、Java表达式语言和Java服务器网页的实现。它是开发人员构建和部署基于Java的应用程序的理想选择。
严格来说,Tomcat 不像Nginx或Apache那样是普通的web服务器。它是一个Java servlet,具有与Java servlet交互的扩展功能,并同时实现诸如JavaServer Pages(JSP)和Java表达式语言(Java EL)等技术规范。
Tomcat与其他web服务器的区别在于,它专门用于提供基于Java的内容。最初开发它是为了提供Apache HTTP服务器中缺少的JSP功能。
在处理既包含PHP又包含Java内容的项目中,您可以将Apache Tomcat与Apache HTTP服务器一起运行。Apache HTTP服务器可以处理静态和动态内容,Tomcat则处理JSP功能。
然而,Apache Tomcat本身并不是一个功能齐全的web服务器,也不像Nginx和Apache那样高效。

使用以下指南学习如何在Linux发行版上安装Apache Tomcat。
5. Caddy Web 服务器
用 Go 编写的 Caddy 是一个快速而强大的多平台 Web 服务器,还可以充当反向代理、负载均衡器和 API 网关。所有功能都内置,无需依赖,这使得 Caddy 安装和使用都非常简单。
默认情况下,Caddy 支持 HTTPS,并且可以轻松处理 SSL/TLS 证书的更新。无需依赖项增加了其在各种发行版之间的可移植性,不会与库发生冲突。
这是一个理想的网络服务器,适用于运行用GO编写的应用程序,并提供完全支持IPv6和HTTP/2,以实现快速的HTTP请求。它还支持虚拟主机、先进的WebSockets技术、URL重写和重定向、带压缩的缓存和静态文件服务,以及Markdown渲染。
Caddy的市场份额非常小,根据W3techs的数据,它仅占市场份额的0.05%。

学习如何在Linux发行版上安装Caddy网络服务器,请参考以下指南。
6. OpenLiteSpeed Web服务器
OpenLiteSpeed是一个为速度、简单性、安全性和优化而设计的开源网络服务器。它基于LiteSpeed企业版Web服务器版,提供企业版的所有基本功能。

OpenLiteSpeed网络服务器采用事件驱动、资源友好型的架构,并配备了一个用户友好的WebAdmin GUI,帮助您管理您的域名/网站并监控一系列指标。
它经过优化,可执行各种脚本,如Perl、Python、Ruby和Java。OPenLiteSpeed支持IPv4和IPv6,并提供SSL/TLS支持。它支持TLS 1.0、1.1、1.2和1.3。
您可以享受带宽限制,智能缓存加速,HTTP 请求验证和基于 IP 的访问控制。此外,您将受益于高性能页面缓存和 Web 服务器处理数千个并发连接的能力。
除了充当 Web 服务器外,OpenLiteSpeed 还可以充当负载均衡器和反向代理。它可以免费下载,并在 GPLv3 许可下提供。
了解如何使用以下指南在 Linux 发行版上安装 OpenLiteSpeed Web 服务器。
7. Hiawatha Web 服务器
使用 C 编写,Hiawatha 是一个轻量级且安全的 Web 服务器,专为速度,安全性和易用性而构建。它的代码和功能非常安全,可以抵御 XSS 和 SQL 注入攻击。Hiawatha 还允许您使用特殊的监控工具监视服务器。

它也很容易安装,并提供充足的文档,以指导您并为您提供所需的所有信息。推荐将 Hiawatha 用于嵌入式系统或具有低规格的旧服务器。
8. NodeJS
这可能会让人感到震惊。是的,NodeJS是一个主要的开源、跨平台的 server-side 运行环境,用于用 Javascript 构建 web 应用程序。然而,它还包含了一个http模块,提供了一组类和函数,以扩展其功能并使其能够扮演 web 服务器角色。

请参阅以下指南,了解如何在 Linux 发行版上安装NodeJS。
结论
虽然我们已经介绍了一些最好的开源 web 服务器,但这个列表绝不是固定不变的。如果您认为我们遗漏了一个应该出现在这个列表中的 web 服务器,请告诉我们。
Source:
https://www.tecmint.com/best-open-source-web-servers/