Есть веб-приложение, которое запускается под Apache+mod_wsgi. Выполнение одного из запросов вешало выполнение, а в лог попадало:
Premature end of script headers: apache.py
Поиск по интернетам сказал, что проблема где-то в запросах к БД. Запросы
проверил - всё нормально. При этом ошибка проявлялась только в одном окружении
из двух. Потом стал отлаживать просто при помощи print
. В итоге
выяснил, что выполнение вешается на строке:
soup = bs4.BeautifulSoup(data)
Дальше поиск по интернетам привёл на bug/948577, вкратце lxml+BeautifulSoup под mod_wsgi вешает выполнение запроса. А в той строке BeautifulSoup в качестве парсера подтягивал как раз lxml. Прописал парсер явно:
soup = bs4.BeautifulSoup(data, 'html.parser')