2009-08-05 199 views
2

我想部署我的第一个Rails应用程序。我将所有文件复制到〜/ mysite.com并设置MySql。在Dreamhost上部署Rails应用程序

Here's my configuration at Dreamhost

现在,当我访问mysite.com时,我得到一个404错误(这不是我的自定义404错误)。看来乘客不跑!

我该怎么办?我需要启动乘客吗? (触摸TMP/restart.txt什么都不做)

+0

是不是apache访问或错误日志说什么?如果是这样,请在这里发布。 – ryanb 2009-08-05 20:18:24

+0

日志说没有:(唯一可用的信息在这里:http://www.foto-fiori.com – collimarco 2009-08-05 20:38:24

+0

您是否在VPS?Dreamhost目前已安装Rails 2.2.2。您的回溯显示尝试使用Rails 2.3 .3。 – danivovich 2009-08-05 23:51:32

回答

1

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

rake gems RAILS_ENV=production 

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

rake rails:freeze:gems 
+0

$ rake gems (in /mnt/local/home/collimarco/foto-fiori.com) - [I] mysql - [I] mini_exiftool I =已安装 – collimarco 2009-08-05 21:06:54

+0

您可以在Dreamhost的轨道应用程序中运行“脚本/控制台制作”吗? – ryanb 2009-08-05 22:05:25

+0

$脚本/控制台制作 加载生产环境(Rails 2.3.3) >>用户。count => 7 – collimarco 2009-08-06 10:10:30

1

4事情首先要检查:

  1. 您启用了Ruby on Rails的客运(mod_rails)的域名
  2. 你点你的域名配置到你的应用程序的公共目录。
  3. 你的Rails版本(如2009/8/5钢轨高达2.3.3,但Dreamhost的是2.2.2)
  4. 你所有的gem依赖可在Dreamhost的,在你的主文件夹,或在解包你的rails应用程序。

如果乘客给你一个错误消息,那么你的导轨应用程序不启动,但乘客会把东西放在apache日志中。

这些是:〜/日志/ domain.name/HTTP/

通常这是因为错误的轨道版本或丢失的宝石或Dreamhost的环境和你的开发机器之间有一些其他的不匹配。

+0

现在您可以在上面的链接中看到配置 – collimarco 2009-08-05 20:07:17

+0

我在查看时遇到问题,稍后再试 – danivovich 2009-08-05 20:11:39

+0

现在我从乘客处得到一个错误:http://www.foto-fiori.com/ 但是我不明白问题是什么:日志中什么都没说:( – collimarco 2009-08-05 20:25:37