📅  最后修改于: 2023-12-03 14:46:54.357000             🧑  作者: Mango
当我们使用 rails server
启动本地服务器时,默认情况下它会监听 localhost
这个主机名。这意味着只有本地机器上的浏览器才能够请求到服务器。如果你想将本地服务器的服务开放到通过局域网或公网的浏览器上访问,我们需要将主机名从 localhost
更改为计算机的 IP 地址。
在 Linux 或 macOS 终端中运行以下命令:
rails server -b 0.0.0.0
-b
或 -binding
的参数告诉 Rails 服务器监听所有可用的本地 IP。这样,其他机器就可以通过你的计算机的 IP 地址访问到这个服务。
在 Windows 终端中运行以下命令:
rails server -b 0.0.0.0 -p 3000
Windows 对 localhost
的解析会形成死循环,导致服务器无法启动。所以我们还需要加上 -p
或 -port
的参数将端口号加上(默认端口号是 3000)。
在 Linux 或 macOS 终端中运行以下代码:
ifconfig | grep "inet " | grep -v 127.0.0.1 | awk '{print $2}'
这个命令会输出本机所有的 IP 地址。通常情况下,我们会使用 Wi-Fi 网络的 IP 地址。如果你不知道你的 Wi-Fi IP 地址,可以执行以下命令:
ipconfig getifaddr en0
在 Windows 终端中运行以下命令:
ipconfig | findstr "IPv4"
这个命令会输出本机所有的 IP 地址。我们同样需要找出 Wi-Fi 网络的 IP 地址。
如果你想将本地的 Rails 服务器开放到其他机器上访问,只需要在启动服务器时加上 -b 0.0.0.0
参数即可。同时你可以使用终端命令获取本地 IP 地址,在其他终端机器上访问该地址即可访问到即将本地的服务器。