静的ファイルをnGinx経由で配信することができず、代わりに404が表示されます。私はエラー(error.logに示されている)を見ることができます、私はそれを修正する方法を見ることができません。Django、nGinxで静的ファイルを提供するとエラー404
STATIC_ROOT = os.path.join(PROJECT_DIR, "staticfiles/")
STATIC_URL = '/static/'
DEBUG=False
urls.py
urlpatterns += patterns('', (
r'^static/(?P<path>.*)$',
'django.views.static.serve',
{'document_root': 'static'}
))
settings.py(collectstaticとすべての静的ファイルは、 'staticfiles /' に今あるんでした)
nginxの構成
server {
listen 80;
server_name my_ip;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/project/project/project/staticfiles;
}
location/{
include proxy_params;
proxy_pass http://unix:/home/project/project/project.sock;
}
}
base.html
{% load staticfiles %}
<link rel="stylesheet" href="{% static '/css/main.css' %}">
これは
Error.logです
2017/04/09 10:57:40 [error] 4719#4719: *182 open() "/home/project/project/project/staticfiles/static/images/home-lock.png" failed (2: No such file or directory)
( "静的/" は、静的URLに付加されたログであります理由がわからない)
を試してみてください。 – zmbq
私は知っています。最初のプロジェクトは実際にはユーザー名です。私のサーバーのroot以外のユーザーのそれぞれのユーザー名は、プロジェクトと同じです。どうして?それは醜いですが、それは同じ画面上の様々な端末を同時に扱うときにエラーが起こりにくいです。私はあなたが他の2つについて説明する必要はないと確信しています。 – xpanta