使用 nginx 作为主要 Web 服务器有哪些缺点?

使用 nginx 作为主要 Web 服务器有哪些缺点?

我看到数以百万计的网站使用 nginx 作为与 Apache 协同工作的代理 Web 服务器。但我看到很少有服务器只将 nginx 作为其默认 Web 服务器运行。这种配置的主要缺点是什么?

我可以看到一些:

  • 无法使用 .htaccess 等目录配置文件,因此每次配置更改都应在主服务器配置文件中进行,并需要服务器重新加载。但 pecl htscanner 可以弥补 php 设置方面的不足
  • nginx 缺少 mod_php,可以通过 php-fpm 等方式弥补。

还有什么?为什么人们不放弃 Apache 而转向 nginx 或任何其他轻量级解决方案?可能是有一些特殊原因?

编辑:这个问题主要涉及使用 LAMP 堆栈。

答案1

从我的 #nginx 经验来看,这几乎总是因为熟悉 Apache .htaccess 文件并且不想丢失它或依赖它。例如,运行共享服务器托管的人只想卸载静态文件并保留 Apache 供用户摆弄。

说实话,除了为最终用户保留 .htaccess 之外,我真的想不出代理到 Apache 的任何其他理由。

编辑:实际上,共享主机的 mod_php 加上 phpsuexec 可能是坚持使用 Apache 的另一个原因。

答案2

如果您有一群人可以让 Apache 运行良好,那么为什么还要重新学习全新的应用程序和配置、迁移 mod_rewrite 规则、重做 mod_perl/php/etc 配置、重新测试、重新部署呢?

这两种软件堆栈可能都是免费的,但“重新训练、重新开发、重新测试”却不是,而且现在是时候添加用户关心的功能了1,而不是为了修修补补而修修补补。

1显然,我不是在谈论个人项目。

答案3

我喜欢 Nginx,但有两件事阻止我将它用于我的网站。

  • 设置起来很困难PHP-FPM。我还没有成功地用最新的 PHP 版本做到这一点。

  • Nginx 尚未支持我感兴趣的 HTML5 Websockets。

相关内容