使用Apache2预订Ruby on Rails?

时间:2013-02-07 21:48:11

标签: ruby-on-rails ruby apache controller

我曾经使用Webrick服务器来使用Ruby on Rails,但现在我的老板让我在apache服务器上运行ROR代码,我看到这两个服务器之间有一些区别,我不知道如何访问关于apache的控制器/动作,所以任何人都碰巧知道关于apahce的任何关于ROR的书?谢谢!

1 个答案:

答案 0 :(得分:3)

要直接在Apache中运行,最好的办法是使用Phusion Passenger,它可以充当Apache模块。


但是,我认为你也缺少一些概念信息。以下是一些用于托管rails的常见Rack服务器:

WEBrick :纯粹使用Ruby实现的Web服务器(随Ruby一起提供)。它性能不高,而且相对有限。它是一个伟大的开发网络服务器,但大多数人不会在生产中使用它。

Thin:一个非常高性能的Web服务器,特别容易启动和运行。

Unicorn:广泛使用和推荐的分叉Web服务器(由GitHub编写) - 但需要更多管理才能在生产中启动和运行。

几乎在所有情况下,人们通常会在他们选择的Rails网络服务器(作为代理)前面使用Nginx或Apache:

  • 与上述任何选项相比,Nginx / Apache在提供静态文件方面做得更好。如果您没有使用CDN来托管资产,那么您一定要配置代理来托管它们。

  • Nginx / Apache非常适合管理大量请求并对其进行排队,以便您的应用服务器可以专注于正在进行的请求,而不是大量的排队请求。

  • 减少安全漏洞的表面积。

我选择的配置是Nginx + Unicorn;我发现Apache管理起来太笨重了,而Unicorn特别棒。