Попытка развернуть мое веб-приложение на фляге с помощью lighttpd
Я пытаюсь развернуть свое веб-приложение на фляге с помощью lighttpd. Я создал это hello.fcgi
файл
#!/usr/bin/python
from flup.server.fcgi import WSGIServer
from hello import app
if __name__ == '__main__':
WSGIServer(app).run()
И питон файл hello.py
Я добавил эти строки в конце /etc/lighttpd/lighttpd.conf
, Я хотел, чтобы это было доступно из http://localhost:7777
,
$SERVER["socket"] == ":7777" {
fastcgi.server = ("/hello.fcgi" =>
((
"socket" => "/tmp/hello-fcgi.sock",
"bin-path" => "/var/www/html/py/hello.fcgi",
"check-local" => "disable",
"max-procs" => 1
))
)
alias.url = (
"/static/" => "/var/www/html/py/static"
)
url.rewrite-once = (
"^(/static($|/.*))$" => "$1",
"^(/.*)$" => "/hello.fcgi$1"
)
}
Я также включил включение модулей FastCGI, псевдонимов и перезаписи. Все файлы моего веб-приложения находятся внутри /var/www/html/py/
папка, включающая hello.py, hello.fcgi и папку "static".
Затем я перезапустил lighttpd и попытался посетить http://localhost:7777
но мой браузер говорит: "Этот сайт не доступен".
Что здесь не так и как я могу это исправить?
0 ответов
Знайте, что это поздно, но столкнулся с этим при поиске другой проблемы и решил, что опубликую здесь исправление, которое задокументировано в документации Python Flask для Lighttpd.
#!/usr/bin/env python3
from flup.server.fcgi import WSGIServer
from hello import app
class ScriptNameStripper(object):
def __init__(self, app):
self.app = app
def __call__(self, environ, start_response):
environ['SCRIPT_NAME'] = ''
return self.app(environ, start_response)
app = ScriptNameStripper(app)
if __name__ == '__main__':
WSGIServer(app).run()