ruby rails中如何配置puma服务监听指定的IP地址
puma是rails默认的web服务,当使用rails server启动的时候,puma默认的监听地址是127.0.0.1:3000,此时的web服务只能在本机上访问。当然通过命令行我们可以很方便的改变默认设置,例如:
rails s -b 0.0.0.0 -p 3003
这样就将默认端口改为了3003,监听全部地址,我们就可以在局域网其他机器上访问服务了。
但是每次都通过参数修改不免流于下乘了,最为懒惰的程序员必须要偷懒,比如可以建立个shell程序 srv.sh。
但是今天我要说的不是此种方法,其实在config目录下,就有puma.rb配置程序可用。
修改此文件,据我所知也有两种方式,其一,使用bind命令:
bind 'tcp://0.0.0.0:3008' # port ENV.fetch("PORT") { 3008 }
此时port命令需要注释掉。
其二,设置默认host地址:
set_default_host '0.0.0.0' port ENV.fetch("PORT") { 3080 }
set_default_host 一定要放置在port命令之前。
通过以上两种修改方式任意一种修改后,我们就可以简单地 使用 rails s 命令启动服务了。
以上都是网上搜索所得,觉得有些用处,所以记录下来。