Rails

【Rails】HerokuにデプロイしたらApplicationErrorが発生した時にやったこと

Railsで作ったすごーく簡素な静的サイトをherokuにデプロイしたんですが、アクセスすると↓のようにApplicationErrorでページが表示されません。

ローカル環境では動いていたのに何故…。
(システムではよくあるやつですが)
ちなみにRailsのバージョンは「5.1.6」

まずは書かれている通りlogsコマンドを実行

heroku logs --tail

ログの中で気になったのはこれ
at=error code=H10 desc="App crashed" method=GET path="/favicon.ico"

なんでfavicon.ico・・?
よくわからなかったのスルー。

他にも「State changed from starting to crashed」とか出てました。
起動しようとしたけどクラッシュした?

ググって色んな方の記事を見ていたところ、クラッシュするのは設定周りが怪しいという記事を目にする。

ローカルでは動くので、設定周りで「development」と「production」が違うところを探しました。
真っ先に見るべきだったと今になって思いますがw

で、怪しいのはHerokuではsqlite3が使えないということ。

「database.yml」のproductionのところ、

database: db/production.sqlite3

をコメントにしてみた。代わりに

adapter: postgresql

を追加。
COMMITしてgit push heroku masterして、再度実行してみたところ・・・

動いた!!

今回デプロイしたのがDBを使わない簡素なサイトだったので、DB周りは関係ないよなぁと最初から疑ってませんでした。

ただ、
Railsチュートリアルで作ったアプリはここがsqliteのままで動いていたので、何故今回作っているアプリだけがダメなのかわかっていません・・

こういうの、新しい技術の学び始めの頃はスルーして先に進めるタイプなので深追いしませんが、後からまた出てくるかもしれませんね。
知ってる方からしたらおかしなこと言ってるかもしれませんが、Rails初学者の記録として残しておきます。




-Rails