Lösung: 1. Konfigurieren Sie „STATIC_URL“ und „STATIC_ROOT“ in der Datei „settings.py“ richtig. 2. Führen Sie den Befehl „python manage.py Collectstatic“ aus. 3. Starten Sie Gunicorn und Nginx neu.
Die Betriebsumgebung dieses Tutorials: Windows7-System, CSS3- und HTML5-Version, Dell G3-Computer.
Nach der Bereitstellung von Django auf dem Server muss jede Änderung an der Website auf der Serverseite synchronisiert werden. Bevor ich diesen Artikel schrieb, dachte ich, es gehe nur darum, den Quellcode zu synchronisieren die heutige Frage.
Nachdem ich die Datei main.css geändert habe, habe ich die Website über Git synchronisiert und der Code wurde erfolgreich mit dem Server synchronisiert. Aber es kann einfach nicht normal angezeigt werden. Nach einiger Suche und Erkundung habe ich den richtigen Weg gefunden, statische Dateien wie CSS zu ändern Die .py-Datei unter Ihrem Projekt wurde korrekt mit STATIC_URL und STATIC_ROOT konfiguriert:
STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR,'static/')
STATIC_ROOT ist eine absolute Adresse, die nur verwendet wird, wenn Django bereitgestellt wird Das Projekt, da es mehrere APPs gibt, kann sein, dass die statischen Dateien in jeder APP zur einheitlichen Verwendung durch Nginx gesammelt werden Die Funktion von
STATIC_URL besteht darin, dem Browser den Zugriff auf Ihre statischen Dateien zu ermöglichen, die als Zuordnung dienen.
2 Dateien lokal sammeln Es wird nur mit dem statischen Ordner unter der entsprechenden APP synchronisiert, aber Nginx und andere rufen die Dateien im von Ihnen festgelegten STATIC_ROOT-Ordner auf, daher müssen wir diesen sehr wichtigen Vorgang nach der Codesynchronisierung ausführen:
python manage.py collectstatic
Nachdem dieser Code ausgeführt wurde, wird der Die gerade geänderte main.css-Datei wird in der statischen Datei im Stammverzeichnis der Website gesammelt und wartet auf den Aufruf von nginx.
# 查看gunicorn进程ID pstree -ap | grep gunicorn # 重启进程 kill -HUP ID
Empfohlenes Lernen:
CSS-Video-TutorialDas obige ist der detaillierte Inhalt vonWas soll ich tun, wenn Django die CSS-Datei geändert hat, diese jedoch nicht wirksam wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!