#はじめに
現在プログラミング学習を始めて3ヶ月目の初学者です。
学んだことをqiitaに投稿という形でアウトプットするため、また備忘録として記事を作成しました。
開発環境では何も問題なく動いていたのですが、本番環境では
We're sorry, but something went wrong.
と出てしまいました。なのでエラーログの確認からして行きます
##エラーログの確認
参考記事
https://qiita.com/ug23/items/308182bf4e60bc81f04e
https://qiita.com/nkekisasa222/items/d4ef64a5e6b539ed3c37
AWS EC2を使いデプロイしていて、そもそもエラーログの見方から分からなかったので上記の記事を参考にしました。
1.EC2サーバにログイン後、対象アプリのリポジトリに移動。
[ec2-user@******]$ cd 対象のリポジトリ
2.直下のlogに移動
[ec2-user@****** 対象のリポジトリ]$ cd log
3.logまで移動したらlsコマンドで直下のファイルを検索。すると以下のように表示される
[ec2-user@****** log]$ ls
development.log production.log puma-error.log puma.log
4.下記コードを実行し、エラーログを確認
[ec2-user@****** log]$ tail -f production.log
##エラー内容
ActionView::Template::Error(undefined local variable or method `users_path'
と出ていました。場所は
app/views/layouts/application.html.erb:31
です。なので試しにviコマンドで31行目をコメントアウトしブラウザのリロードをかけてみました
$ vi app/views/layouts/application.html.erb
ですが、またもやWe're sorry, but something went wrong.の表示が出てきたので。変更が反映されていないと思い下記のコマンドでプロセス番号を確認し
$ ps aux|grep puma
キルコマンドで削除
$ kill 4405
コメントアウトを外しrailsを再起動
rails s -e production
無事にアプリケーションを立ち上げることが出来ました!
##最後に
qiitaへの投稿に慣れていないので、分かりづらい上に情報が少ないですが、これから欠かさず投稿していこうと思います。