Ich hoffe, dass jemand das gesehen hat -
Ich benutze django-compressor und nutze das lessc-Setup, um das weniger in CSS für die Datei zu rendern / komprimieren. Es funktioniert perfekt, wenn es vom Entwicklungsserver aufgerufen wird, aber wenn es unter Apache + mod_wsgi ausgeführt wird, gibt es ständig einen Fehler zurück.
Um dies zu debuggen, habe ich genau den Befehl ausgeführt, den der Filter als www-data-Benutzer aufruft (der in der WSGIDaemonProcess-Direktive als wsgi-Benutzer definiert ist) und verifiziert, dass er korrekt funktioniert, einschließlich Berechtigungen zum Lesen und Schreiben die Dateien, die manipuliert werden.
Ich habe auch den django-compressor-Code in compressor / filters / base.py auf diesem System gehackt, und anscheinend versucht jeder AND-Befehl, einen Aufruf zu erhalten, nach dem Aufruf von proc.communicate () einen Returncode von -6 .
Ich hoffe, dass jemand das schon einmal gesehen hat - oder dass es eine Glocke läutet. Es funktioniert gut auf dieser Maschine außerhalb des Apache + mod_wsgi-Prozesses (d. H. Den Prozess als Dev-Server ausführen). Ich bin nur nicht klar, was Blockierung der Subprozess.Popen () - Aufrufe.
Verwenden Sie Python 2.7.2 zufällig?
Diese Version von Python führte einen Fehler ein, der dazu führte, dass fork () in Subinterpretern fehlschlug:
Sie müssen die WSGI-Anwendung im Haupt-Python-Interpreter des Prozesses erzwingen, indem Sie Folgendes setzen:
%Vor%Wenn Sie mehrere Django-Anwendungen ausführen, müssen Sie sicherstellen, dass nur diese Konfiguration verwendet wird. Andernfalls würden Sie alle Django-Anwendungen in einem Interpreter ausführen, was aufgrund der Django-Konfiguration nicht möglich ist.
Tags und Links python django apache mod-wsgi django-compressor