2010-11-02 46 views
4

我试图在Heroku上部署应用程序,但尚未运行。我看到了Rails 500页(“很抱歉,但出事了”),但是当我heroku logs我看到什么有趣:Heroku应用程序在发布时默默无闻

==> exceptional.log <== 
# Logfile created on Tue Nov 02 11:27:18 -0700 2010 by logger.rb 
[INFO] (init.rb:21) Tue Nov 02 18:27:18 UTC 2010 - Loading Exceptional 2.0.26 for 2.3.5 

==> dyno-2858334.log <== 
>> Thin web server (v1.2.6 codename Crazy Delicious) 
>> Maximum connections set to 1024 
>> Listening on 0.0.0.0:15336, CTRL+C to stop 

==> production.log <== 
# Logfile created on Tue Nov 02 11:27:17 -0700 2010 

正如你所看到的,我已经安装了特殊插件,和例外没有报告任何例外。

在Heroku的应用程序启动过程中,可能会默默地失败?

+0

你有没有试过对你的git repo做一些小事,然后推向heroku?你有最后一个'git push heroku'的输出吗? – 2010-11-02 20:13:51

+0

你能做'heroku rake db:migrate'吗?如何打开'heroku控制台'并通过它访问你的应用程序? – monocle 2010-11-03 05:07:43

+0

是的,这两个工作没有任何问题。 – Peeja 2010-11-04 13:00:58

回答

4

答案是:我们的应用程序是用无礼的话,它试图其已编译的CSS写入public/目录。在Heroku上,这是在只读文件系统上。相反,我安装了Hassle,它将编译后的Sass CSS置于tmp/之下,它是可读写的。

的Heroku支持通过环境设置为development,这使得要记录的错误发现了问题:

heroku config:add RACK_ENV=development 

麻烦网站推荐加入无忧作为一个插件,但我不喜欢,当我使用插件只能使用宝石。我得到了它通过将其添加到Gemfile中,并加入这environment.rb工作:

# existing requires 
# ... 

require 'hassle' 

Rails::Initializer.run do |config| 
    # ... 
    # existing config 
    # ... 

    config.middleware.use Hassle 
end 

现在它只是工作。

+0

这正是我所期待的。谢谢! – Glenn 2011-03-06 18:40:26

+0

只需要注意......如果您使用的是Rails 3,请使用以下分支:https://github.com/Papipo/hassle – Glenn 2011-03-06 18:54:18

1

事实上,你看到Rails的500页意味着应用程序运行正常(例如,它能够启动并产生500错误)。

一个问题可能是您的数据库未被迁移。尝试迁移它或上传您的开发数据库。

3

尝试(从您的应用程序的根目录)做:

heroku rake db:migrate 
heroku db:push 
相关问题