
Ich habe einen Lighttpd-Server, auf dem ich eine Python-Anwendung mit Fastcgi ausführen möchte. Ich habe dieBeispiel auf der Lighty Homepage, aber ich kann Lighty nicht dazu bringen, das Python-Skript auszuführen. Dies ist mein Fastcgi-Abschnitt in lighttpd.conf:
fastcgi.server = (
".py" =>
(
"python-fcgi" =>
(
"socket" => "/tmp/fastcgi.python.socket",
"bin-path" => "/usr/bin/login_flask/fcgitest.py",
"check-local" => "disable",
"max-procs" => 1,
)
))
Dies ist der Inhalt von fcgitest.py:
#!/usr/bin/python3
def myapp(environ, start_response):
start_response('200 OK', [('Content-Type', 'text/plain')])
return ['Hello World!\n']
if __name__ == '__main__':
from flup.server.fcgi import WSGIServer
WSGIServer(myapp, bindAddress="/tmp/fastcgi.python.socket").run()
Wenn ich Lighty mit dieser Konfiguration neu starte, kann ich sehen, dass der Python-Prozess gestartet wird und ich erhalte keinen Fehler von Lighty. Wenn ich jedoch zuhttps://localhost:444/test.pyes lädt einfach ewig weiter. Nichts wird in access.log oder error.log geschrieben. Wenn mir jemand einen Hinweis geben könnte, wie ich das untersuchen kann, wäre ich dankbar.
BEARBEITEN: Ich habe fastcgi.debug aktiviert und dies wird in das Fehlerprotokoll geschrieben, wenn ich die oben genannte URL aufrufe. Es lädt trotzdem ewig weiter:
2019-07-26 11:53:26: (gw_backend.c.914) gw - found a host 0
2019-07-26 11:53:26: (gw_backend.c.227) got proc: pid: 2628 socket: unix:/tmp/fastcgi.python.socket-0 load: 1
Antwort1
Laut Ihrem fcgitest.py
,
if __name__ == '__main__':
from flup.server.fcgi import WSGIServer
WSGIServer(myapp, bindAddress="/tmp/fastcgi.python.socket").run()
Keines der Beispiele enthält den bindAddress
Parameter, den Sie hier haben.
Versuchen Sie stattdessen Folgendes:
if __name__ == '__main__':
from flup.server.fcgi import WSGIServer
WSGIServer(myapp).run()