2012-03-05 18 views
3

我有多个Rails服务器实例,并且需要每个人都知道它在environment.rb中的自己的侦听端口。 request.port将在控制器中工作,但不在environment.rb的上下文中。有没有办法?谢谢!如何在Rails初始化程序中获取服务器端口

+0

出于好奇,为什么它需要知道这个? – 2012-03-05 21:19:46

+0

@andrew,谢谢你的提问。我想我会被要求集体在这里的社区:)简单的答案是,我们打算在每个服务器实例内的相同端口上打开匹配的UDP套接字。询问你是否对UDP端口的需求感到好奇:) – timeon 2012-03-05 21:49:35

+0

我只是不认为这是一个特别好的主意。你的实际web服务器(nginx,apache等)应该处理这个,IMO,但是我对这种设置没有太多经验。 – 2012-03-05 21:53:20

回答

0

您可以使用此代码获取运转轨道端口:

Rails::Server.new.options[:Port] 

你可以看看options parser in the Rails documentation看什么哈希参数可用。

+0

我对此有着不同的结果。在一个地方我可以使用它。在另一个地方,我得到了'未初始化的常量Rails :: Server' ...仍然试图找出这一个。 – Andrew 2015-05-11 20:04:15

+0

即使这个工作正常,它只会返回默认选项,而不是当前选项。 – Andrew 2015-05-11 20:13:47

相关问题