在php中,你只需要apache或nginx.为什么在已安装nginx时,ruby rails还需要像puma或unicorn这样的东西?
最佳答案
这不完全正确,要使用apache运行PHP,您将需要apache mod_php或将其作为FastCGI module运行.对于Nginx,后者为seems to be the norm.
对于Ruby,有Phusion Passenger填充此角色,并支持apache和nginx.在apache上,它以mod_php的方式作为插件模块运行.对于Nginx,我不确定.
但是,您可能希望使用专用的应用程序服务器运行ruby应用程序.这就是Unicorn,Puma等的用武之地.没有什么能阻止你为php做类似的设置,但它并不常见.
在许多情况下使PHP更容易部署的另一件事是,大多数发行版和服务器安装都附带了apache和nginx已经设置来处理php,而你需要自己设置为ruby.
一旦设置,Passenger几乎(但不完全)部署ruby应用程序就像部署php应用程序一样简单.