После очень стандартного и минорного выпуска наша установка Apache / Nginx / Django / wsgi перестала работать с ужасной
Преждевременный конец заголовков скриптов: django.wsgi
сообщение в журнале. Там нет нигде segfault и никаких других сообщений об ошибках.
Нет проблем с экспатом (проверено с помощью примера приложения wsgi с этим модулем и без него).
Сервер работал нормально. Кодовая база была немного обновлена, и apache перезапустился, когда начались ужасы.
Вот мой файл wsgi:
import sys
import os
sys.path.append('/home/app/')
sys.path.append('/home/app/topmodule/')
os.environ['DJANGO_SETTINGS_MODULE'] = 'app.settings'
os.environ["CELERY_LOADER"] = "django"
import app.settings
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Apache conf для этого сайта:
WSGIScriptAlias / /home/app/topmodule/django.wsgi
WSGIDaemonProcess app user=app group=app processes=6 threads=1
WSGIProcessGroup app
Я также попытался добавить:
WSGIApplicationGroup %{GLOBAL}
но там никакой помощи.
Все, что я получаю, - это страница ошибок сервера Apache и эта чертова преждевременная ошибка в журнале ошибок
Я попытался откатить кодовую базу, но это тоже не принесло пользы, что заставляет меня подозревать, что это не новая проблема кода.
EDIT
Я сузил segfault до строки в wsgi.py Джанго.
Трассировка:
http://paste.pocoo.org/show/546803/
Некоторые свалки:
http://paste.pocoo.org/show/546846/
Это происходит при запросе любого URL.
Используемое промежуточное ПО:
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.gzip.GZipMiddleware',