Sever error 500の対処方法
エラー内容
models.pyやtemplateファイルを編集して本番環境にデプロイしたらServer error 500が表示されてしまう。
仕様技術
- サーバー
- AWS
- EC2(ubuntu)
- Postgresql
- gunicorn
- nginx
- ROUTE53
- EC2(ubuntu)
- AWS
試したこと
管理者サイトにはアクセスできるが、管理者サイトのデータベースに関するページにアクセスするとServer error 500が表示される
-
nginx, gunicorn, postgresqlの再起動
→治らず -
Djangoプロジェクトディレクトリ/アプリケーションディレクトリ/migrations/init.py以外の削除
→python manage.py makemigrations & python manage.py migrateでPostgresqlのテーブルと整合性が取れない旨のエラー -
Postgresqlのテーブルごと削除&
python manage.py makemigrations & python manage.py migrateを実行
→DBが新たに作成されてSever error 500が消えた
今後の対策
開発環境のmigrationsディレクトリと本番環境のmigrationsディレクトリは非同期にして、models.pyのみ同期させる。migrationは各サーバーで行う。