Es ist trotzdem setzen Sie eine django-site in den Wartungsmodus mit Stoff?
Ich bin derzeit mit MaintenanceModeMiddleware, um meine Website in den Wartungsmodus, aber es erfordert, dass Sie die änderung in der settings.py Datei auf dem remote-server. Ich würde gerne verwenden Sie Stoff, um aus der Ferne die Seite in den Wartungsmodus. Gibt es eine Möglichkeit, dies zu erreichen? Oder gibt es eine bessere Methode, dies zu tun? Danke.
[UPDATE]
Danke für das feedback jeder am Ende das ist, was ich Tat, und es funktioniert großartig für mich, http://garthhumphreys.com/2011/06/11/painless-django-maintenance-mode-with-fabric/ - ich mag die Idee, kommentieren Sie Zeilen aber mit meinem setup, wenn ich zu tun, die auf den Produktions-server überschrieben würde einmal schob ich die neue version heraus, so dass am Ende setzen die Website in den Wartungsmodus aus der server-Ebene und nicht die django-Ebene funktioniert viel besser und ist wirklich einfacher und flexibler, zumindest für mich 🙂
- diese Frage verbunden sein können. Ich weiß nicht viel über den Stoff, und ich meine nicht unhöflich klingen, aber ist das nicht auch mit SSH und Veränderung eines settings Linie ziemlich einfach? Das ist eine remote-Methode
- Ich fand Garth Humphreys' Ansatz nicht so toll, da der browser-Cache. Dies führte zu Situationen, in denen entweder: - nicht-Wartungsmodus-Seiten zu sehen waren, während der maintenance mode - Wartungsmodus-Seite zu sehen war, wenn Sie nicht in den Wartungsmodus setze ich meine gezwickt Lösung in einer separaten Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Stoff hat Befehle zu helfen, Sie oder kommentieren Sie die Zeilen in einer bestimmten Datei in
fabric.contrib.files
. Siehe die Dokumentation hier: http://docs.fabfile.org/en/1.0.1/api/contrib/files.htmlPersönlich bevorzuge ich handle diese auf dem front-end-proxy, anstatt in einem Django-middleware. Ich würde werfen Sie einen Blick auf diese Frage Zeigen Sie eine benutzerdefinierte 503 Seite, wenn upstream down ist die die Konfiguration von Nginx für die Verwendung einer benutzerdefinierten Seite, wenn der upstream ist nach unten.
Meine Lösung:
Hier den entsprechenden Abschnitt in der Apache-config-Datei:
Dann die relevanten Teile der Stoff-Skript:
Dies funktioniert gut, obwohl es nicht davon abhängen, Django Umgang mit Anforderungen während der Wartung-Modus; es wäre schön, dienen nur einer statischen Datei.
Es ist ein Gabel von django-maintenancemode, die erlaubt das drehen der maintenance-mode on/off, indem ein Wert in der Datenbank. Auf diese Weise können Sie, zum Beispiel, erstellen Sie eine einfache management-Befehl zum Umschalten in den Wartungsmodus, und rufen Sie es über Stoff. Ich denke, es ist flexibler als die Verwendung von mod_rewrite.