3

I wonder what are the adventages and disadventages of using NGINX only instead of NGINX & APACHE together. I need very fast server for file distribution nginx looks perfect at first glance however has some drawbacks like:

  • doesn't support upload progress bar. Yes I know there is a module which may fix this issue but could it influence performance in bad way, since nginx has to act in different way ?

  • .htaccess, I have about 200 lines of rules to rewrite, how much time it may took and how hard it would be to rewrite it to nginx ?

  • what about security issue ? Is nginx any more/less safe then apache ?

  • any other disadvantages of using nginx only ?

Thanks for resonable answers. ;)

4

1 回答 1

2

您已经突出显示了更改为 nginx 时的大多数常见问题。这是一组详细的答案

  1. 不像加载 apache 所产生的开销那么大。与 nginx 相比,Apache 本身具有过多的模块和选项,是内存和 CPU 的消耗者。这可以在以下答案中看到:https ://drupal.stackexchange.com/a/71940 。Apache 2.4 不那么重要,但更多。

  2. 这是 Apache 最遗漏的功能之一,但也是磁盘最密集的功能之一。您是否知道 Apache 需要遍历所有目录直到 webroot 才能读取每个请求的所有 htaccess 文件?便利就是回报。如果您更喜欢方便而不是轻微的收益,请坚持下去。有一些方法可以通过将所有规则合并到单个 htaccess 中或通过Location在配置中使用块来提高 Apache 效率。

  3. 你真的认为人们不会在你使用 PHP 之前对你使用 PHP 进行 pwn 吗?nginx 稍微安全一些,因为打包的内置内容更少,并且几乎所有普通任务都需要 cgi 进程。

  4. 是的。你失去了一大堆特定于 apache 的特性,比如所有 mod_dav 的东西。您实际上会丢失很多模块。

如果需要 Apache 模块,nginx 的最佳用途是在 Apache 前面。如果可能的话,可以将它用作负载平衡器,在多个 Apache 实例之间,你突然有了一个相当……棒的混合设置。

于 2013-10-19T14:05:10.883 回答