部署Sinatra app .rb

时间:2012-10-09 01:42:09

标签: sinatra

我知道这可能是一个愚蠢的问题。但是我用Sinatra框架创建了一个.rb文件,我不知道如何部署"它。当我在服务器上发布文件时,我只得到一个简单的文本文件来回读我的代码。当我和Sinatra一起运行它时效果很好。

提前致谢!

2 个答案:

答案 0 :(得分:1)

看起来您的Web服务器(Apache?)只是使用您的Ruby脚本(即文本,ASCII文件)提供,而不是运行它(是:而不是通过Ruby解释器传递它。)

因此:

  1. 您的服务器上是否安装了Ruby解释器?
  2. 您的网络服务器是否配置为运行 Ruby脚本(以“.rb”终止的文件)     通过Ruby解释器?
  3. 并且,Sinatra本身是否安装在您的网络服务器上?
  4. 无论如何,Ruby应用程序(Rails,Sinatra,Padrino)通常使用GIT部署到服务器。看看Heroku和Engine Yard。

    此外,还有一些专门用于帮助开发人员部署Ruby应用程序的工具。请查看Capistrano或Vlad和/或Google的“如何部署sinatra应用程序”。

答案 1 :(得分:1)

对于Sinatra / Rails / etc,大多数人使用Web服务器(即Apache,Nginx等)和应用服务器(Thin,Passenger,Unicorn)。对于一个简单的应用程序,它们可以存在于同一主机上Web服务器管理传入流量,应用程序服务器执行ruby代码并将结果传递给Web服务器。

执行ruby app.rb运行Sinatra应用程序时,实际上是在加载WEBr​​ick,它是一个应用程序服务器。由于您的开发计算机是本地计算机,因此您可以直接在localhost:3000或类似地址访问它。

查看有关使用Thin设置网络服务器的教程,这是一个比较容易使用的工具。如果/如果你长大了,那么看看Unicorn。