自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服务器的角色。