远程查看pow.cx提供的网页

jst*_*ner 13 ruby-on-rails rack-pow

使用WEBrick,您可以导航到另一台设备/虚拟机上的应用程序,导航到your.ip.address.here:port

是否有可能与pow.cx做类似的事情?

Jam*_*ier 43

Pow(0.4.0)的最新版本现在包括xip.io支持.你可以在这里阅读这个版本.

以下是一个快速解释,说明这有助于Pow在整个本地网络中为您的Rails应用提供服务:

假设您的开发计算机的LAN IP地址是10.0.0.1.使用新版Pow,您现在可以访问http://myapp.10.0.0.1.xip.io/上的应用程序 .xip.io支持通配符DNS,因此10.0.0.1.xip.io的任何和所有子域都可以解析.

以下是xip.io的描述,来自他们的网站:

xip.io在公共Internet上运行自定义DNS服务器.当您的计算机查找xip.io域时,xip.io DNS服务器从域中提取IP地址并将其发送回响应中.


tot*_*rio 12

基本上有两种选择:

  • 不要使用pow:像往常一样在localhost上运行你的应用程序并像往常一样访问它们
  • 编辑hosts文件(或本地DNS)以指向服务器计算机ip

从虚拟Windows机器访问的示例:假设您在pow:store.devauth.dev中运行两个rails应用程序,并且您想从Windows xp虚拟机访问它们以使用IE测试它们,您只需要编辑您的hosts文件添加行:

C:\ WINDOWS\SYSTEM32\DRIVERS\ETC \主机

# Allow to access applications in pow. 
# The ip address points to the host machine localhost, that usually is the default gateway
10.0.2.2      store.dev
10.0.2.2      auth.dev
Run Code Online (Sandbox Code Playgroud)

然后打开IE浏览器以访问http://store.devhttp://auth.dev中的应用程序.


Gar*_*eth -1

具体来说,不可以,因为 Pow 使用Host请求的标头来确定您需要访问哪个应用程序。要使其远程工作,您必须让远程计算机将所需的域名映射到您的 IP 地址 - 使用本地 DNS 服务器或通过编辑 HOSTS 文件。这两种情况都有可能,但很烦人。

在这种情况下,最简单的做法是启动一个独立的 Rails 服务器,如您所提到的(使用./script/serverrails s取决于版本),然后您可以http://[ip address]:3000像以前一样进行处理。

换句话说,Pow 之所以有效,是因为它拦截您的本地域解析,而该解析不受远程计算机影响(或可供远程计算机使用)。

  • 这可能是发布时(2011 年初)的最佳答案,但现在(2012 年中)看起来 http://xip.io/ 是最简单的方法。 (8认同)