LoginSignup
0
0

More than 3 years have passed since last update.

Herokuへのデプロイ後、HTTPエラー500が出た

Last updated at Posted at 2020-07-25

Ruby on Railsで簡単な掲示板アプリを作成し、初めてherokuのデプロイに成功した。

ただ、herokuでsqliteが未対応なことを知らなかったり、フロント周りをslimで初実装した為に、デプロイ前後で少々エラーに苦しんだので、備忘録として解決方法を残す。

sqliteでherokuデプロイ失敗した時の対処法

恐らくrailsでwebアプリを作成した際、デフォルトではsqliteがDBとして設定されていると思う。
そのままデプロイしようとすると失敗するので、
エラー参考記事1エラー参考記事2herokuデプロイの手順

以下を削除

Gemfile.
gem 'sqlite3'

以下を追記

Gemfile.
group :development, :test do
  gem 'sqlite3'
end

group :production do
  gem 'rails_12factor' #heroku logsを詳細表示できる便利gem(必須ではないがあると便利)
  gem 'pg' #デプロイ後はpostgresqlを使うように指定
end

その後$git push heroku masterをしたらデプロイは成功した。

herokuデプロイは成功しているのにアプリが表示できない時の対処法

その後、$heroku openでデプロイできたアプリをブラウザで見ようとしたところ、

HTTP500のエラーが出てサイトが表示されないというエラーが出た。

このエラーの原因は、viewにslimを導入しており、slimのgem記述位置がdeveropmentにあったためだった。
なので、以下2つのgemを、group :development doから、全ての環境で適応される場所に記述。

Gemfile.
gem 'slim-rails'
gem 'html2slim'

we're sorry, but something went wrongのエラーへの対処法

その後、rootパスのURLは表示に成功したが、違うコントローラーのURLが通らない。
we're sorry, but something went wrongという表記が出てしまう。

これは、デプロイ前のエラーの原因sqliteが関係していた。

we're sorry, but something went wrongでgoogle画像検索を実行して出てきたこのサイトにある現象と似ていたので、それを実行してみたところエラーが解決した。

$heroku run rake db:migrate

※ちなみにrakeコマンドはrails6以降はrailsでできるので、それを走らせればok

今回のエラーで学んだこと

herokuでデプロイ後なにか表示に問題があった場合は、

$heroku logs -t

でログが確認できる。

Google画像検索も有効

エラーを検索した時に、SEO的強いにQiitaや質問サイトが上の方に出てくるが、Google画像検索だとSEO的に弱いサイトのサムネなども検索できる。
参考になりそうなサムネをクリックすると解決できるかも..??

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0