Ruby的GServer只想在localhost上工作

时间:2011-01-11 20:41:49

标签: ruby sockets

TCPServer.new(port)创建一个服务器,可以处理来自localhost或远程计算机的请求。

但GServer.new(port)创建的服务器只能处理来自localhost的请求。

在查看GServer的来源时,它会调用TCPServer.new(@ host,@ port)。 @host默认为DEFAULT_HOST,即127.0.0.1。

TCPServer.new的来源说:

# TCPServer.new([hostname,] port) => tcpserver
# Creates a new server socket bound to _port_.
# If _hostname_ is given, the socket is bound to it.

我想使用GServer,但不能绑定到某个主机名。这样的事情可能吗? Web上的每个示例都只使用localhost。

似乎如果没有为GServer指定主机,GServer不应该为TCPServer指定主机。

1 个答案:

答案 0 :(得分:3)

使用0.0.0.0将主机名绑定到所有接口。