2017-05-05 1 views
0

Meine Umgebung mit Django ist 1.10.7, PostgreSQL 9.4 und Nginx 1.6 mit GunicornBereitstellen eine Django-Site mit einem anderen Ordner für statische Dateien

Ich habe einen globalen Ordner statisch für gemeinsame statische Dateien genannt in Sub-Anwendungen zu verwenden, i stellen Sie dann einen anderen Ordner für Produktionsbetrieb mit dem Namen 'static_root':

in meinem settings.py

STATIC_URL = '/static/' 
STATIC_ROOT = os.path.join(BASE_DIR, 'static_root') 
STATICFILES_DIRS = [ 
os.path.join(BASE_DIR, "static") 
] 

in meinem urls.py:

from django.conf import settings 
from django.conf.urls.static import static 
if settings.DEBUG: 
    urlpatterns += (static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)) 
    urlpatterns += (static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)) 

wenn Debug wahr ist alles funktioniert perfekt, aber im Produktionsmodus der Website sehen nicht die statischen Dateien

Ich habe die Lage in nginx Konfiguration zu

danken!

Antwort

1

ich die Antwort auf meine Frage gefunden,

das Problem war, dass ich in der nginx Konfiguration festgelegt: root

location /static { 
    root /var/projects/project/static_root; 
} 

der richtige Weg ist: alias

location /static { 
    alias /var/projects/project/static_root; 
} 
Verwandte Themen