自1991年发布第一台Web服务器以来,这是一段漫长的历程。长期以来,Apache是唯一值得一提的Web服务器。但是,随着时间的流逝,其他开源Web服务器也越来越受欢迎。
在本指南中,我们将介绍一些最佳的开源Web服务器。
Apache用C语言编写,并且由于其大量的模块扩展了Web服务器的功能,因此是高度可定制的Web服务器。其中包括用于缓存的mod_file_cache,为文件上传和下载提供FTP支持的mod_ftp以及允许支持SSL / TLS加密协议的mod_ssl等等。
此外,鉴于其丰富的模块集,Apache提供了多协议支持,例如IPv4和IPv6支持以及常用的HTTP,HTTP / 2和HTTPS协议。
Apache还提供了虚拟托管支持,使您可以托管多个域或网站。通过配置虚拟主机,一台服务器可以轻松且无任何复杂性地托管多个域。您可以使用example.com,example.edu,example.info等。
Nginx因其低资源利用率,可伸缩性和高并发性而引人注目。实际上,如果进行适当的调整,Nginx 每秒可以处理多达500,000个请求,而CPU利用率却很低。因此,它是承载高流量网站的最理想的Web服务器,击败了Apache。
在Nginx上运行的流行站点包括Tencent,Taobao,JD,NetEase和SINA等。
Nginx依靠配置使调整变得容易,就像Apache一样,它支持多种协议,SSL / TLS支持,基本HTTP身份验证,虚拟主机,负载平衡以及URL重写等。目前,Nginx占有所有托管网站的31%的市场份额。
Lighttpd在BSD许可下分发,在Linux / Unix系统上本机运行,但也可以安装在Microsoft Windows中。它以其简单,易于设置,性能和模块支持而广受欢迎。
Lighttpd的体系结构经过优化,可以处理大量并行连接,这对于高性能Web应用程序至关重要。Web服务器支持FastCGI,CGI和SCGI,用于将程序与Web服务器接口。它还支持以多种编程语言编写的Web应用程序,并特别注意PHP,Python,Perl和Ruby。
其他功能包括SSL / TLS支持,使用mod_compress模块的HTTP压缩,虚拟主机以及对各种模块的支持。
严格来说,Tomcat不是像Nginx或Apache这样的普通Web服务器。它是Java Servlet,具有与Java Servlet交互的扩展功能,同时实现了诸如JavaServer Pages(JSP)和Java Expression Language(Java EL)之类的技术规范。
什么套的Tomcat从其他Web服务器除了它,它的专门针对服务基于Java的内容。它最初是为提供Apache HTTP服务器所缺少的JSP功能而开发的。
在处理同时包含PHP和Java内容的项目的情况下,可以将Apache Tomcat与Apache HTTP服务器一起运行。当Tomcat处理JSP功能时,Apache HTTP服务器可以处理静态和动态内容。
但是,Apache Tomcat本身并不是一个完善的Web服务器,并且效率不如Nginx和Apache等传统Web服务器。
默认情况下,Caddy支持HTTPS并轻松处理SSL / TLS证书续订。缺少依赖性增加了它在各种发行版之间的可移植性,而库中没有任何冲突。
它是运行用GO编写的应用程序的理想Web服务器,并完全支持IPv6和HTTP / 2以启用快速HTTP请求。它还支持虚拟主机,高级WebSockets技术,URL重写和重定向,具有压缩功能的缓存和静态文件服务以及markdown呈现。
Caddy的市场份额很小,根据W3techs的说法,它仅占市场份额的0.05%。
OpenLiteSpeed Web服务器基于事件驱动,资源友好的体系结构,并具有用户友好的WebAdmin GUI,可帮助您管理域/网站并监视一系列指标。它经过优化,可以执行各种脚本,例如Perl,Python,Ruby和Java。OPenLiteSpeed支持带有SSL / TLS的IPv4和IPv6。IT为TLS 1.0、1.1、1.2和1.3提供支持。
您还可以享受带宽调节,智能缓存加速,HTTP请求验证和基于IP的访问控制。此外,您将受益于高性能页面缓存以及Web服务器处理数千个并发连接的能力。
除了充当Web服务器之外,OpenLiteSpeed还可以充当负载平衡器和反向代理。它是免费下载的,并且可以通过GPLv3许可获得。
它也很容易安装,并且附带了足够的文档来指导您完成操作并为您提供所需的所有信息。Hiawatha推荐用于嵌入式系统或低规格的旧服务器。
文章原文地址:https://www.113p.cn/598.html