[Django]本番環境で画像が表示されない問題
今までDjangoアプリケーションは4回ほど開発して、本番環境にデプロイしてきました。
2年ぶりに作る機会があり、本番環境にデプロイしましたが画像が表示されず・・・
表示できるようになったことをまとめ。
起こったこと
ローカルでの表示は問題なし。
本番環境では、CSSは反映されている。画像のみ404エラーで表示されず。
なお、Djangoのバージョンは3.2.5。
以前、開発していた時よりバージョンがかなり変わっているので、それが原因?と思ったりもして、エラーにだいぶ悩まされました。
解決方法
こちらのサイトを参考にしました。
https://sinyblog.com/django/media_file_001/
config直下のurls.pyファイルを編集します。
from django.conf.urls import static, url
from django.views.static import serve
urlpatterns = [
path('admin/', admin.site.urls),
省略
url(r'^media/(?P.*)$', serve, {'document_root': settings.MEDIA_ROOT}),
]