Django アプリ用に nginx で静的ファイルを提供しようとしています。
私は、次の nginx 構成ファイルを提案するこのガイドに従っています。
server {
server_name yourdomainorip.com;
access_log off;
location /static/ {
alias /opt/myenv/static/;
}
location / {
proxy_pass http://127.0.0.1:8001;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
}
}
私のsettings.pyには、次の宣言があります。
STATIC_ROOT = os.path.join(os.path.dirname(__file__), 'static/')
STATIC_URL = '/static/'
STATIC_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
次の形式の URL で静的ファイルを確認できます。
http://x.x.x.x/static/admin/img/icon_searchbox.png
ただし、{% static %} タグを使用してテンプレート内の静的ファイルを参照しようとすると、次の形式の URL が表示されます。
http://x.x.x.x:8001/static/admin/img/icon_searchbox.png
これはファイルを指さず、代わりに Django によって処理されます。
どうすればこれを解決できますか?