[トラブル] AWS+Nginx+Djangoでstaticファイルを参照できない

AWS+Nginx+Djangoで静的ファイルにアクセスしようとしたら
「403 Forbidden」
となる場合の解決方法を1つ紹介。


/etc/nginx/nginx.conf にマップ情報を記述する。

静的(static)ファイルにアクセスできない理由は「マップ設定が無いから」。
(ドメイン)/static/
にアクセスしたときに、サーバー内の
home/XXX/static/
を参照して欲しい場合は以下を記述。

location /static {
           root home/XXX;
       }

注意点として「rootにマップさせるパスにstaticまで含めない」こと。

さらにディレクトリのパーミッションを変更する

AWSのEC2インスタンスのhomeディレクトリはデフォルトでパーミッション700なので、
755に書き換えないとNginxからアクセスできないので書き換えること。