Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 允许其他人通过amazon实例查看您的Sinatra本地服务器_Ruby_Ssh_Sinatra_Amazon - Fatal编程技术网

Ruby 允许其他人通过amazon实例查看您的Sinatra本地服务器

Ruby 允许其他人通过amazon实例查看您的Sinatra本地服务器,ruby,ssh,sinatra,amazon,Ruby,Ssh,Sinatra,Amazon,这真的很难解释。但基本上,我有一个amazon实例,我想用ssh连接到它并用sinatra在上面运行一个本地服务器。因此,我将ssh连接到amazon实例,git克隆我的repo,并运行ruby config.ru。然后我希望其他人能够看到正在运行的本地服务器。我所做的一件事是添加了一个安全组,端口4567HTTP,这样我就可以通过公共dns访问它。它在机架应用程序上工作,但在sinatra上不工作,我甚至尝试了一个“hello world”示例应用程序来尝试让它工作 我不确定是否有特定的原因让

这真的很难解释。但基本上,我有一个amazon实例,我想用ssh连接到它并用sinatra在上面运行一个本地服务器。因此,我将ssh连接到amazon实例,git克隆我的repo,并运行ruby config.ru。然后我希望其他人能够看到正在运行的本地服务器。我所做的一件事是添加了一个安全组,端口4567HTTP,这样我就可以通过公共dns访问它。它在机架应用程序上工作,但在sinatra上不工作,我甚至尝试了一个“hello world”示例应用程序来尝试让它工作

我不确定是否有特定的原因让你想在亚马逊服务器上这样做,但如果你只是想让其他人看到你的sinatra应用程序,你可以简单地使用

使用此功能,您只需在自己的计算机上运行localhost,然后运行
localtunnel PORTNUMBER
,它将为您提供一个URL,您的应用程序现在可以从中看到。然后,您可以将该URL提供给您想要的任何人

使用示例:

$ruby myapp.rb

$localtunnel 4567

然后会显示一个URL供您复制粘贴到朋友。就这么简单


我在开发手机友好的web应用程序时经常使用此功能,并希望在不部署到服务器的情况下快速查看手机上的应用程序。

您安装了Bundler gem吗?当然,主要问题是我无法从其他计算机访问正在运行的本地服务器OK,只是检查一下。你看到了吗?是的,为了修复我的帖子,我不需要将它放在端口80上,只要将规则添加到amazon实例,任何端口都可以。我几乎没有对sinatra应用程序做任何改变,因为它完全可以在本地服务器上运行。您是否使用sinatra内置服务器(例如runnig
ruby myapp.rb
)?如果是这样,您是在默认的
开发
环境中运行,还是在
生产
环境中运行?很好,是的,这正是我所需要的。此外,由于某些原因,在我的config.ru上,我无法执行'Sinatra::Application.run!',我必须将它保留为'Sinatra::Application',然后它就运行了。谢谢