【发布时间】:2015-04-17 19:34:49
【问题描述】:
试用 Puma 作为我的 Rails 服务器。
有人知道为什么 Puma rails 服务器只接受 localhost:3000 而不是 127.0.0.1:3000 吗?
我要测试 Facebook OAuth,这需要一个 IP 地址。
【问题讨论】:
-
相同问题/重复:stackoverflow.com/q/27768479
标签: ruby-on-rails puma
试用 Puma 作为我的 Rails 服务器。
有人知道为什么 Puma rails 服务器只接受 localhost:3000 而不是 127.0.0.1:3000 吗?
我要测试 Facebook OAuth,这需要一个 IP 地址。
【问题讨论】:
标签: ruby-on-rails puma
你试过rails s -b 127.0.0.1 -p 3000吗?这一直对我有用。
【讨论】:
试试env PORT=port_number rails s -b your_IP_Address
服务器将在https://your_IP_Address:port_number启动
【讨论】:
这个问题是Puma issue #782,在 2016 年 7 月 18 日是 solved,this patch。
详细信息: 您看到的问题是 Puma 默认绑定到 localhost,它被底层 Rails TcpServer 视为普通主机名,并且只解析为一个 IP 地址(IPv6您的情况下的版本),但不适用于 IPv4 和 IPv6 版本。因此,如您所见,它不接受127.0.0.1:3000 上的连接。然而,在当前版本中,localhost 有一个例外,它现在绑定到 IPv4 和 IPv6 分辨率。
【讨论】: