自1991年发布第一台Web服务器以来,这是一段漫长的历程。长期以来,Apache是唯一值得一提的Web服务器。但是,随着时间的流逝,其他开源Web服务器也越来越受欢迎。
在本指南中,我们将介绍一些最佳的开源Web服务器。
1. Apache HTTP服务器
Apache HTTP Server(在Red Hat发行版中俗称Apache或httpd)是由Apache Software Foundation根据Apache License版本2 开发的免费开源Web服务器。发布于1995年,Apache迅猛发展,已成为最受欢迎的服务器之一以及广泛使用的网络服务器,为超过37%的网站提供支持。
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等。
2. Nginx Web服务器
Nginx的发音为Engine-X,是一种开源的高性能鲁棒性Web服务器,它还可以兼用作负载均衡器,反向代理,IMAP / POP3代理服务器和API网关。Nginx最初由Igor Sysoev于2004年开发,如今已逐渐普及,以击败竞争对手并成为最稳定和可靠的Web服务器之一。
Nginx因其低资源利用率,可伸缩性和高并发性而引人注目。实际上,如果进行适当的调整,Nginx 每秒可以处理多达500,000个请求,而CPU利用率却很低。因此,它是承载高流量网站的最理想的Web服务器,击败了Apache。(百度:113资讯网)
在Nginx上运行的流行站点包括Tencent,Taobao,JD,NetEase和SINA等。
Nginx依靠配置使调整变得容易,就像Apache一样,它支持多种协议,SSL / TLS支持,基本HTTP身份验证,虚拟主机,负载平衡以及URL重写等。目前,Nginx占有所有托管网站的31%的市场份额。
3. Lighttpd Web服务器
Lighttpd是一个免费的开源Web服务器,专门用于对速度有严格要求的应用程序。与Apache和Nginx不同,它的占用空间非常小(不到1 MB),并且在服务器资源(例如CPU利用率)方面非常经济。
Lighttpd在BSD许可下分发,在Linux / Unix系统上本机运行,但也可以安装在Microsoft Windows中。它以其简单,易于设置,性能和模块支持而广受欢迎。
Lighttpd的体系结构经过优化,可以处理大量并行连接,这对于高性能Web应用程序至关重要。Web服务器支持FastCGI,CGI和SCGI,用于将程序与Web服务器接口。它还支持以多种编程语言编写的Web应用程序,并特别注意PHP,Python,Perl和Ruby。
其他功能包括SSL / TLS支持,使用mod_compress模块的HTTP压缩,虚拟主机以及对各种模块的支持。
4. Apache Tomcat
Apache Tomcat是Java Servlet引擎,Java Expression Language和Java Server网页的开源实现。对于正在构建和部署基于Java的应用程序的开发人员来说,它是理想的选择。www.113p.cn
严格来说,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服务器。
5. Caddy Web服务器
Caddy用Go语言编写,是一种快速而强大的多平台Web服务器,它还可以充当反向代理,负载平衡器和API网关。一切都是内置的,没有依赖关系,这方面使Caddy易于安装和使用。
默认情况下,Caddy支持HTTPS并轻松处理SSL / TLS证书续订。缺少依赖性增加了它在各种发行版之间的可移植性,而库中没有任何冲突。
它是运行用GO编写的应用程序的理想Web服务器,并完全支持IPv6和HTTP / 2以启用快速HTTP请求。它还支持虚拟主机,高级WebSockets技术,URL重写和重定向,具有压缩功能的缓存和静态文件服务以及markdown呈现。113资讯网:www.113p.cn
Caddy的市场份额很小,根据W3techs的说法,它仅占市场份额的0.05%。
6. OpenLiteSpeed Web服务器
OpenLiteSpeed是一个开放源代码的Web服务器,旨在实现速度,简单性,安全性和优化。它基于LiteSpeed企业版 Web服务器版本,并提供企业版中的所有基本功能。
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许可获得。
7. Hiawatha Web服务器
Hiawatha用C语言编写,是一种轻量级且安全的Web服务器,旨在提高速度,安全性和易用性。它的代码和功能非常安全,可以抵御XSS和SQL注入攻击。Hiawatha还允许您使用特殊的监视工具监视服务器。
它也很容易安装,并且附带了足够的文档来指导您完成操作并为您提供所需的所有信息。Hiawatha推荐用于嵌入式系统或低规格的旧服务器。
8. NodeJS
这可能会令人震惊。是的,NodeJS主要是一个开放源代码和跨平台的服务器端运行时环境,用于在Javascript中构建Web应用程序。但是,它还捆绑了一个http模块,该模块提供了一组类和函数,这些类和函数扩展了其功能并使其能够充当Web服务器的角色。