如何从Rails获取HTTP_HOST?

时间:2009-09-04 12:14:23

标签: ruby-on-rails apache

我需要在rails应用程序中设置一些服务器特定的变量,这些变量将至少在两个不同的服务器上运行。获取请求的HTTP_HOST值以获知当前服务器的最佳方法是什么,并相应地设置这些变量? 我正在使用Apache 2和Passenger。

2 个答案:

答案 0 :(得分:10)

认为你正在寻找request.env["SERVER_ADDR"]

答案 1 :(得分:0)

2台服务器是否涉及负载均衡?如果是这样,您将不希望从请求中获取主机,因为在两种情况下它都是相同的。你会想要在一些通用的红宝石电话中抓住它。我做Ruby之前已经有一段时间了,但可能就像(未经测试的 - 粗略的想法):

Resolv::Hosts.getNames(Resolv::Hosts.getAddress('localhost'))