django - Was sind die Gründe, warum nach der Migration von Nginx zu Alibaba Cloud kein Zugriff auf statische Dateien mit 403-Fehlern möglich ist?
ps.s: Das Django-Projekt kann lokal erfolgreich ausgeführt werden, funktioniert jedoch nach der Migration zur Alibaba Cloud nicht.
Laufumgebung: ubuntu14.04+uwsgi+nginx+django1.9.
Dies ist ein Screenshot der Admin-Seite beim Zugriff auf Django. Alle CSS-Dateien können nicht geladen werden. Die detaillierte Fehlermeldung wird unten veröffentlicht.
Der Speicherort des Projekts in Alibaba Cloud ist /root/mysite.

/etc/nginx/site-enabled/mysite.conf lautet wie folgt
1 2 3 4 5 6 7 8 9 10 11 12 13 | <code>server {
listen 8080;
server_name www.domainname.com;
location / static / {
alias /root/mysite/blog/ static /;
}
location / {
uwsgi_pass 127.0.0.1:8001;
include /etc/nginx/uwsgi_params;
}
}</code>
|
Zusätzliche Frage: Alle statischen Dateien wurden in dem von meinem Alias angegebenen Verzeichnis gesammelt
1 2 3 4 5 6 7 8 9 10 | <code>$ python manage.py collectstatic
0 static files copied to '/root/mysite/blog/static' , 69 unmodified.
# 文件权限没有问题
$ ll /root/mysite/blog/ static
total 16
drwxrwxr-x 4 root root 4096 Oct 5 09:13 ./
drwxrwxr-x 6 root root 4096 Oct 5 15:28 ../
drwxrwxr-x 6 root root 4096 Oct 5 09:13 admin/
drwxrwxr-x 5 root root 4096 Oct 5 09:13 blog/</code>
|
1 2 3 4 | <code># mysite/settings.py中已经指定了下面两项,**collectstatic**也收集成功,所以我觉得配置可能不存在问题
# 而且项目在本地能够运行,就是迁移到阿里云后无法运行了,所以是不是可能是阿里云的权限问题。
STATIC_URL= "/static/"
STATIC_ROOT = os.path.join(BASE_DIR, 'blog/static' )</code>
|
Dies ist die richtigeSeite
von localhost:8080/admin, als ich lokal experimentiert habe.

伊谢尔伦2874 Tage vor617