任何这些networking服务器软件,即Apache,Nginx和Cherokee目前都适合我的网站。 我正在学习系统pipe理员能够pipe理我的服务器(而不是一份工作)。
对于我这样的初学者来说,任何Web服务器都是新的。 所以,请看看我的要求,好心build议一个networking服务器软件开始(坐在…像永远):
正如你所看到的,我还处于初学者阶段。 所以,请不要说这是一个有争议的问题。 它绝对遵守SF的规则(或者希望如此,我只是阅读它们)。
阿帕奇肯定是你最安全的出发点。 并不是说它比其他的更容易,但是你想在其上运行的软件已经被100%确定地用Apache进行了testing。 通常情况下,一切都可以与其他Web服务器一起工作,但除非您已经有了关于典型问题的经验,否则Apache就是您的select。
性能方面的Apache很好。 nginx,lighttpd和其他更高性能的Web服务器开始只在YouTube这样的angular落案例中起作用。 对于典型的网站(如果服务器和networking带宽“典型”,每月可以轻松达到数千万的页面加载量),Apache不会成为瓶颈; 它可以每秒处理数以千计的静态http请求,而且无论如何也可以dynamic地应用你的PHP脚本/数据库/无论是实际的瓶颈。
如果Apache开始成为你的瓶颈,你很可能需要扩展更多的硬件。 虽然nginx&lighttpd真正闪耀的一个场景是提供大量静态内容,比如video文件。
我认为Apache是大多数可以提供帮助的教程和人员。 加上组合(L)AMP – Linux Apache Mysql PHP的工作从一开始就很容易设置。 如果您的站点需要缩放到中等大小,Memcached也可以正常使用Apache和mySQL数据库。 我从一个简单的LAMP设置开始,随后在stream量增加到几个站点时安装了Memcached。 在一些教程的帮助下,一切都很简单。
你要求一根棍子上的月亮
Apache a 非常模块化,易于configuration和更新Web /应用程序服务器。 然而,在进行应用程序处理(如PHP)时处理大量stream量并不是很好,因为它为每个孩子消耗了大量的RAM。
Nginx是一个伟大的networking服务器。 它需要很less或没有资源(我听说过使用25MB RAM和2-3%CPU的生产站点)。 但是,它不是一个应用程序服务器。 它提供静态内容或代理服务器。 没有其他的。
我用了很长很长的时间。 Nginx + PHP-FPM设置和调整很有趣,但通常不是必需的。
对于几乎所有“初学者”的情况,Apache可能是一个安全的赌注,主要是因为它有大量的文档可用。
NGINX是一个伟大的networking服务器(除其他外),但是试图将PHP和/或CGI与它集成,需要一些努力和嘲弄。 这是非常轻量级的,可以做很多花哨的东西(如反向代理),但它可能不是最好的东西引导自己。
我玩过cherokee和apache2,他们都很好,有很好的文档。 切诺基做未来的GUI界面来pipe理你的服务器,这可能会更容易一些人。 特别是初学者。
然而,大多数情况下,当我需要快速启动web服务器的时候,我使用apache2,只是因为我习惯于设置它。
在这三者之间进行select的时候,你不能对其中任何一个出错。 他们都很好,有他们的亲和骗局,我build议你看看这样的一些基准。