有没有任何理由使用Apache而不是Nginx?我的意思是针对一个“全新项目”,没有任何遗留代码或配置。
更新:
使用Apache最常见的原因包括:
- 我们有自己的重写配置
- 我们有自己的应用程序,在Apache上运行
..这对于旧应用程序来说还可以。但对于完全“新应用程序2013”呢?
你怎么想?
顺便说一下,我知道以下主题:
..但我找不到任何支持Apache的专业人士。你能指点我吗?
有没有任何理由使用Apache而不是Nginx?我的意思是针对一个“全新项目”,没有任何遗留代码或配置。
更新:
使用Apache最常见的原因包括:
..这对于旧应用程序来说还可以。但对于完全“新应用程序2013”呢?
你怎么想?
顺便说一下,我知道以下主题:
..但我找不到任何支持Apache的专业人士。你能指点我吗?
Apache是互联网上最受欢迎的Web服务器,估计它为现有所有网站提供了约55%的服务,而Nginx仅占12%(于2013年1月)。
更新(2015年4月):Apache仍然拥有约40%的市场份额,而Nginx已经增长到15%。查看上面提到的链接以获取最新数据。
更新(2020年7月):Nginx在37%与25%的流行度上轻松超过Apache。Apache在搜索中仍然有更多点击量。
它是最古老的Web服务器,这意味着您不会遇到任何难度在配置方面找到技术专家。
您还可以在搜索Web时稍微更容易找到帮助。SO有大约80,000个Apache标签和约40,000个Nginx标签。
安装文档有时会假定您正在使用Apache,通常包括.htaccess文档,但没有相应的Nginx配置:
我的建议是?这两种选择都是完全可以的,如果你找不到任何具有说服力的理由,就抛硬币吧。
这里是2018年的回应。
Apache的市场份额为47.4%(比去年下降了3.3%),而Nginx的市场份额为36.8%(比去年增加了4.4%)。
趋势是线性的,如果没有什么变化,在2020年时Nginx将成为最常用的Web服务器。
Nginx是为支持大量并发请求而设计的,现代应用程序通常会进行许多小型Ajax请求和较少的完整页面加载。
我看过基准测试(针对静态资源),Nginx在每秒请求数和RAM使用方面都超越了Apache。
我一个小时前意识到了这一点,我已经使用Apache很多年了,但在撰写此文章后就开始迁移到Nginx。
2018年的结论:选择Nginx。
实际上,没有任何客观的理由选择Apache而不是Nginx。
事实上,Nginx可能在性能方面更加优越,具体信息可以参考性能比较。然而,这些原因通常对于整个网站应用的影响并不重要。
你会发现很多主观的原因来支持人们偏好于一种Web服务器而非另一种,例如出于熟悉感的心理偏见。在涉及到Web服务器方面,这种偏见可能与用户的年龄有关,因为Apache诞生的时间更早。对于许多用户而言,学习一种新系统不是一个有效的时间利用方式。对于经验不足或新管理员来说,熟悉度偏见不适用。
另一个主观原因是错误地认为更大的市场份额总会产生明显更高水平的支持。这种想法未能意识到在极端接受点过后,更大市场份额的相对重要性日益衰减。例如,最近的Netcraft调查显示,Nginx占据了14.42%的市场份额,而Apache则有37.45%。虽然人们可能盲目认为Apache由于其更高的市场份额会拥有更出色的支持,但事实上14.42%代表着1亿4833万1190个网站和用户在使用Nginx,这是一个极其庞大的数字。Nginx的用户数量如此之多,以至于其相对较小的市场份额对支持水平几乎没有任何明显影响。
Apache的mod_php更加稳定和清洁,而Nginx经常会出现HTTP Bad Gateway错误,代码为502。