2

我正在尝试部署我的第一个 Rails 应用程序。我将所有文件复制到 ~/mysite.com 并设置 MySql。

这是我在 Dreamhost 的配置

现在,当我访问 mysite.com 时,我收到 404 错误(这不是我的自定义 404 错误)。看来Passenger不跑了!

我该怎么办?我需要启动Passenger吗?(touch tmp/restart.txt 什么都不做)

4

2 回答 2

1

首先要检查的4件事:

  1. 您为域名启用了 Ruby on Rails Passenger (mod_rails)
  2. 您将域名配置指向应用程序的公共目录。
  3. 您的 Rails 版本(截至 2009 年 8 月 5 日,Rails 最高为 2.3.3,但 Dreamhost 为 2.2.2)
  4. 您的所有 gem 依赖项都可以在 Dreamhost、您的主文件夹中获得,或者在您的 rails 应用程序中解压缩。

如果乘客给你一条错误消息,那么你的 rails 应用程序没有启动,但乘客会在 apache 日志中添加一些内容。

这些在:~/logs/domain.name/http/

这通常是因为错误的 rails 版本或缺少 gem 或 Dreamhost 环境与您的开发机器之间的其他不匹配。

于 2009-08-05T20:05:52.080 回答
1

根据您在http://www.foto-fiori.com/上的堆栈跟踪,您的生产服务器上似乎缺少一个 gem。检查 environment.rb 配置文件中的 gem 列表并确保安装了所有 gem。您还可以 ssh 进入您的应用程序并运行rake gems.

rake gems RAILS_ENV=production

如果 Dreamhost 不允许您安装 gem,您可能需要冻结它们。

rake rails:freeze:gems
于 2009-08-05T20:48:21.527 回答