测试本地rails服务器最安全的方法是什么?

时间:2013-09-01 16:32:37

标签: ruby-on-rails

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

2 个答案:

答案 0 :(得分:3)

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

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

由于您在应用程序上执行此操作,因此仅为连接的IP放入192.168.0.1,为端口放置3000。或者如果使用网址192.168.0.1:3000(就像浏览器一样)

HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://192.168.0.1:3000");

答案 1 :(得分: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性能,而不是蜂窝性能。