更改我的默认本地主机端口Rails中5

更改我的默认本地主机端口Rails中5

问题描述:

我使用导轨5与默认PUMA服务器工作,并听取本地主机:3000更改我的默认本地主机端口Rails中5

我想它来听一个新的端口像192.168.0.0:3000

任何人都可以帮忙吗?谢谢

+0

[如何更改Rails 4应用程序的默认端口?](http://stackoverflow.com/questions/18103316/how-to-change-default-port-of-a-rails-4-应用程序) – Iceman

+0

为什么它不是Rails 5中的有效解决方案? –

+0

但端口是一样的...... –

可以使用-b选项像

rails s -p 3000 -b 0.0.0.0其中-p表示端口选项,0.0.0.0会结合你,如果它是192.168.0.0本地主机IP绑定的服务器,您可以打开您的应用在您的网络中连接设备。 如果你正在寻找改变你的本地IP地址..这不是一个轨道问题。

Rails 5自带puma,配置为config/puma.rb。您可以更改该文件中的默认端口号,或通过在启动导轨之前设置PORT环境变量来覆盖该端口号。

@Iceman:在Rails 5中,不需要修补Rails来覆盖默认端口,所以您提到的答案不再相关。

编辑:在重新阅读原始问题时,我注意到您不想更改端口,而是更改绑定地址。你可以通过编辑config/puma.rb并用bind语句替换port声明:

# Specifies the `port` that Puma will listen on to receive requests; default is 3000. 
# 
#port  ENV.fetch("PORT") { 3000 } 
bind  'tcp://192.168.0.1:3000' 

@JohnLinux:Rails是没有意识到彪马使用不同的绑定地址,所以它会告诉你什么是传递这一事实直到Puma(Puma忽略)。在Rails和Puma的github问题跟踪器中有几个问题涉及到这个问题,AFAICT两端都发生了变化,将绑定地址的控制权交还给Rails,但我还没有玩弄更新的宝石来了解如何远远得到。注释port声明非常重要,否则彪马实际上绑定到两者!

+0

将它的地址绑定到它上面这很有用,但为什么它仍然说'Rails 5.0.3应用程序从http:// localhost:3000开始开发“当它启动时,即使它正在3003听。 – Steve

+0

有趣的是,你应该提到这一点。我从未注意到这一点。事实证明,它可以监听3000和3003,当你在同一台计算机上运行单独的实例时,不必说失败。似乎没有简单的切换来禁用该行为。在github上有一些针对puma的os问题,解决了这种情况的一部分,但没有一个是发布AFAICT。 – BertD

+0

似乎像这个问题已被最新版本的Rails修复。 – mutantkeyboard