Попытка развернуть мое веб-приложение на фляге с помощью 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()
Другие вопросы по тегам