-1

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

提前致谢!

4

2 回答 2

1

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

因此:

  1. 您的服务器上是否安装了 Ruby 解释器?
  2. 您的 Web 服务器是否配置为运行Ruby 脚本(以“.rb”结尾的文件)?
  3. 而且,Sinatra 本身是否安装在您的 Web 服务器上?

无论如何,Ruby 应用程序(Rails、Sinatra、Padrino)通常使用 GIT 部署到服务器。看看 Heroku 和 Engine Yard。

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

于 2012-10-12T07:01:21.027 回答
1

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

当您执行ruby app.rb运行您的 Sinatra 应用程序时,您实际上是在加载作为应用程序服务器的 WEBrick。由于您的开发机器是本地的,您可以直接在localhost:3000或类似的地址访问它。

查看有关使用 Thin 设置网络服务器的教程,它是更容易使用的教程之一。当/如果你长大了,然后看看独角兽。

于 2012-12-26T22:58:47.340 回答