1

我不是很有经验,但我过去玩过一些rails。当我这样做时,很容易测试应用程序而无需将任何东西暴露在互联网上,因为我只需将浏览器指向 localhost。但是这个应用程序将从手机获取输入,所以我认为它需要公开。到目前为止,我所做的是将它推送到 heroku 并在那里进行测试,但这似乎根本不是一个好的解决方案,因为每次我进行更改时,我都会推送它。我想我必须在我的路由器上打开一个端口,然后公开服务器,我想我可以很快弄清楚如何做。关于如何尽可能保证安全的任何建议?还是我缺少更好的解决方案?

4

2 回答 2

3

如果您的服务器和手机在同一个网络上,您可以测试它的方法是在运行服务器的机器上找到本地 IP 地址。然后,您将进入手机的浏览器并键入浏览器的 IP 并“冒号”服务器正在侦听的端口(如果是 rails 服务器,则很可能是 3000)。

因此,例如,如果服务器 IP 是 192.168.0.1,那么它将是 192.168.0.1:3000

由于您是在应用程序上执行此操作,因此只需将 192.168.0.1 用于连接的 IP,将 3000 用于端口。或者如果使用 url 192.168.0.1:3000 (就像浏览器一样)

HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://192.168.0.1:3000");
于 2013-09-01T16:41:52.923 回答
1

一个非常简单的方法是将Powxip.io结合使用。

前者是一个本地网络服务器,它将为您在幕后运行任何 Rack 应用程序。安装很简单:

$ curl get.pow.cx | sh

并将您的应用程序链接到:

$ ln -s <path-to-app> ~/.pow/myapp

您的应用程序现在可以在http://myapp.dev/本地访问。

假设你的电脑 IP 是 10.0.1.1 并且你的手机在同一个 Wifi 网络上,你的应用可以从http://myapp.10.0.1.1.xip.io.

警告:您将获得 Wifi 性能,而不是蜂窝性能。

于 2013-09-01T16:45:25.597 回答