从Apache迁移到nginx的经验?

我想获得一些关于从Apache到nginx迁移的反馈。 我的目标是减lessWeb服务器的内存占用。 目前,我在Apache上使用以下modules.features:

  • 多个虚拟主机
  • 服务器端包含
  • 快速的CGI

请分享您的经验:迁移期间的问题,迁移后的收益(值得吗?),nginx的有用模块等。

根据我的经验,这是非常值得的。 例如,一个Magento商店(这是众所周知的缓慢的一般)。 通过切换到nginx + php-fcgi / php-fpm + apc,我能够获得超过100%的响应时间改善。 在这一点上,除非在Apache中有一个必须具备的function(我怀疑这实际上将在实践中发生),否则我总是会使用基于nginx的configuration。

这是我写给Magento的。 HTH。 http://tumblelog.jauderho.com/post/85252024/improving-magento-performance

您列出的所有function都是由Nginx开箱即用的:

  • 多个虚拟主机
  • 服务器端包含
  • FastCGI的

我们在工作中使用了Lighttpd,Apache和Nginx的总体组合。 我们不能完全摆脱Apache,因为我们正在为它运行一些自定义模块(一个被黑了的mod_pubcookie,等等),将它们移植到Lighttpd / Nginx将是一个痛苦。

我曾经使用Lighttpd作为我们事实上的轻量级内容服务器,但是它的FreeBSD实现遇到了很多困难(使用FreeBSD的sendfile / kqueue系统调用似乎会中断 – 当它断开时,整个服务器都将停止运行)。 我从来没有与Nginx的任何问题,并已慢慢取代我们所有的Lighttpd安装。 Nginx在我们的部署中已经很稳定。

Nginx的一个问题是它的文档没有很好的被Google索引 ,所以你必须直接去他们的网站查找东西。 尽pipe如此,所有文档的组织方式对我来说都是有意义的,所以find我所需要的并不难。

恐怕我没有nginx的经验,只有apache和lighttpd。 我们使用一个通过FastCGI连接的lighttpd和110个PHP进程的单个实例replace了110个以不同用户身份运行的Apache客户端PHP应用程序副本。 configuration相当less,内存使用率更低,可能更快。 在这个特定的例子中,PHP应用程序不能通过互联网直接访问。 我不确定我们是否会这样做。 我们知道我们在用Apache做什么, 我们已经有了很多的经验。 我的印象是,Apache非常灵活,但是用更慢的过程来付出代价。 我会使用lighttpd和nginx,我们不需要这种灵活性。 我很欣赏这可能没有真正回答你的问题。

Nginx vs LiteSpeed:Magento基准testinghttp://turnkeye.com/blog/2010/04/nginx-vs-litespeed-test-magento/