Как правильно настроить и запустить uWSGI?
Я только начал с wsgi и пытаюсь запустить простой сервер uwsgi. Я создал среду virtualenv и активировал ее. Внутри lib у меня есть файл hello.py с содержимым:
def application(environ, start_response):
status = '200 OK'
output = 'Hello World!'
response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)
return [output]
И я бегу:
uwsgi --http :8000 --wsgi-file lib/hello.py --add-header "X-test: hi"
запустить сервер.
Моя проблема заключается в том, что сервер не выделяет тело. Когда я захожу на localhost:8000, я вижу заголовок X-test, поэтому я определенно нажимаю на uwsgi. Кроме того, если я заменю "200 OK" на что-то другое, я также вижу это в curl.
Я вполне уверен, что правильно выполнил руководство (оно показалось довольно простым), кто-нибудь может заметить, что я делаю неправильно? Может ли быть так, что я использую python3? Я установил uwsgi через pip внутри моего virtualenv, если это вообще имеет значение.
1 ответ
WSGI для python3 отличается, ваш вывод должен быть байтами, а не строкой