Apache和Ngnix是当今最流行的两个开源网站服务器。这些网站服务器支持网上托管的大多数网站,可以操作各种各样的工作量。虽然这两种方法看起来很相似,提供了相同的输出,但是它们在性能和工作方面有所不同。在本文中,我们将介绍这两个网站服务器的基础知识,以及Apache和Nginx之间的区别。
Apache:
Apache HTTP Server(通常称为Apache)是Robert McCool在1995年创建的。它是由Apache软件基金会开发和维护的。Apache网站服务器是一种安全、灵活和快速的网站服务器。作为最古老的网站服务器之一,它提供了广泛的支持。它是LAMP堆的组件之一(Linux、Apache、MySql、PHP)
在Apache创建后的最初几年直到2000年左右,它一直是一个受欢迎的、广泛使用的服务器,但是随着时间的推移,由Apache支持的活动站点的数量出现了下降。根据Netcraft在2018年11月的一项调查,在前100万个网站中,活跃在Apache上的网站总数分别为31%和34%。

Nginx:
Nginx (engine x)是Igor Sysoev在2002年开发的免费开源软件,主要是为了克服Apache的性能限制。Nginx网站服务器可以用作负载平衡器、反向代理、邮件代理以及HTTP缓存。
根据BuiltWith最近10月份的一项调查,在排名前1万的网站中,有40.13%的网站使用了它,而在Nginx上的活跃网站总数为22%。此外,排名前100万的网站中有26%运行在Nginx 网站服务器上。由于其少量的资源利用率和简单的可伸缩性(只需要很少的硬件),近年来它越来越受欢迎。
Apache和Nginx的区别
现在我们对Nginx和Apache都有了基本的了解。接下来看看他们的不同之处。
Nginx vs Apache性能:
我们将通过MPM(多处理模块)检查Nginx和Apache在静态和动态方面的性能。
静态内容:
根据一份基准测试报告,Nginx比Apache快2.5倍。这个结果是基于1,000连接同时运行得出的。Speedem进行的另一个测试同时运行512个连接,结果和它一样,因此,Nginx的速度是Apache的两倍。这就得出结论,在速度和效率方面,Nginx在静态内容方面的总体性能要比Apache好得多。
动态内容:
如果你的网站托管在WordPress、Joomla或Drupal等CMSs上,那么与(non-CMS)非内容管理系统网站相比,它拥有静态内容的机会非常小。我们再次查看Speedemy的基准测试结果,发现性能完全相同。这是因为大多数请求是在PHP运行时环境中处理的,而不是网站服务器的核心部分。对于这两个网站服务器,PHP运行时环境几乎是相同的。
操作系统:Apache运行在Linux、BSD等所有Unix系统上,完全支持Windows。Nginx也可以在现代Unix系统上运行,但是它对Windows的支持有限。为了获得Nginx的最佳性能,建议在Unix的操作系统上安装它。
安全
对比Nginx和Apache的安全性,它们都很好,并且有良好的记录。这两个网站服务器都向用户提供最新的安全提示,比如如何处理DDoS等各种攻击,以及如何减轻这些攻击。Apache会定期在安全报告中共享安全更新和历史管理。另一方面,Nginx也会及时发布安全警告。
尾声
最关键的决定是当涉及到主机类型时,选择哪种网站服务器。如果您的网站托管在共享主机上,那么选择Apache很方便,因为.htaccess文件很容易访问。另一方面,如果您有VPS主机或专用主机,那么Nginx是最好的选择。
Hostease提供主机托管和共享主机,以及预装在Apache中的WordPress主机。此外,我们的Plesk VPS主机和独立主机可以与Apache和Nginx兼容。然而,网站服务器的选择更多地取决于网站的流量。如果您有大量的流量,那么Nginx会更好。对于动态页面,任何一个网站服务器都会做得很好。最后,主机提供商决定了网站的性能。
这就是Nginx和Apache的比较。如果有其它问题,请在下面的评论部分留言。此外关于服务器的相关内容,有兴趣的朋友可以更多的了解一下 影响服务器性能的因素主要有哪些。