Mar*_*odF 16

你应该抛弃Apache吗?

根据我的经验(使用Nginx + PHP大约3.5年),这是一个很好的选择,我永远不会回到Apache.有两个主要优点:

减少内存使用:使用Apache,PHP在Web服务器本身内部加载.如果您有80个Apache进程正在侦听,那么每个进程都将运行不同的PHP环境,每个使用20-30MB的RAM.另一方面,Nginx与一组php-fpm可以单独扩展的进程进行通信.我通常只需运行3-4个PHP进程,因此这大大减少了我的内存使用量.

非常快速的静态资产:Nginx在提供静态资产(CSS,JS,图像......)方面比Apache快,并且使用非常少的内存来执行此操作.

一个可能的缺点是缺乏.htaccess文件支持.这意味着如果您使用的PHP软件依赖于此类型的文件并且不直接提供Nginx配置示例,则必须将Apache .htaccess文件"翻译"为Nginx理解的格式.根据我的经验,我必须为几个Wordpress插件做这件事.同样,它不是太复杂,你通常可以找到一个已经通过谷歌搜索完成它的人.

另外要记住的是Nginx + PHP-FPM不是某种神奇的灵丹妙药.如果你有蹩脚,慢的PHP代码,这将无法修复它.我对Magento的经验有限,所以我不能为您提供任何具体的见解.在Wordpress(我认为非常臃肿)的情况下,Nginx确实在提供静态内容方面要快得多,使用更少的内存并且在提供PHP页面方面更快一些,但它肯定不会将你的PHP执行时间缩短一半;)

Nginx vs Lighttpd

Nginx最近获得了很多人气.它的使用量在去年几乎翻了一番,根据这些统计数据,它的使用量已经比Lighttpd多16倍.

两者之间的性能似乎没有太大差异,所以我肯定会选择Nginx.

请记住,您必须使用PHP作为php-fpm.配置并不困难,并且有关于如何使它们协同工作的无数简单教程.

编辑:对不起,我重新组织了我的回答,我有点想念你的问题.

  • 您在编辑中发布的链接报告了Magento的一个很好的示例配置.我不知道它的版本是什么,但[这篇文章](http://seeparsan.net/2011/03/switching-your-magento-development-environment-from-apache-to-nginx/)报告它适用于1.4和1.5(并提供了为Magento安装Nginx + PHP-FPM的完整说明).还有什么需要知道的吗? (2认同)