Nginx-Cache kann trotz Änderungen nicht geleert werden
Wenn Sie auf ein Problem stoßen, bei dem Ihr Nginx-Frontserver trotz Dateiänderungen weiterhin veraltete CSS-Dateien bereitstellt , du bist nicht allein. Obwohl Sie Nginx neu gestartet und online gesucht haben, ist Ihnen möglicherweise eine Lösung entgangen.
Die empfohlene Lösung, das Cache-Verzeichnis (z. B. var/cache/nginx) zu löschen, ist möglicherweise nicht in allen Fällen anwendbar, da Ihr Server möglicherweise nicht funktioniert ein solches Verzeichnis.
Lösung:
Das Problem kann von der Sendedatei herrühren Einstellung in Ihrer nginx.conf-Datei aktiviert. Diese Einstellung dient der Optimierung der Dateiübertragung und kann in virtuellen Maschinenumgebungen wie Virtualbox zu Fehlfunktionen führen. Durch das Deaktivieren von sendfile wird Nginx gezwungen, eine alternative Methode zum Bereitstellen statischer Dateien zu verwenden, wodurch das Caching-Problem behoben wird.
Dieses Verhalten wird auf einen spezifischen Fehler (https://www.virtualbox.org/ticket/12597) zurückgeführt Virtualbox-Umgebungen, in denen Virtualbox Schwierigkeiten mit Sendfile-Vorgängen hat.
Um Sendfile zu deaktivieren, suchen Sie die Einstellung in Ihrer nginx.conf-Datei (normalerweise in einem location block) und ändern Sie seinen Wert auf „off“:
sendfile off;
Starten Sie Nginx neu, nachdem Sie diese Änderung vorgenommen haben, und Sie sollten in der Lage sein, die aktualisierten CSS-Dateien ohne weitere Probleme bereitzustellen.
Das obige ist der detaillierte Inhalt vonWarum wird mein Nginx-Cache trotz Dateiänderungen nicht gelöscht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!