У меня есть проект django, работающий на домен example.com juste fine. Я хочу добавить одно приложение к example2.com, но если отключить django Debug, я получаю ошибку Bad Request (400).Отладка Apache/Django/WSGI Неверный запрос (400) Ошибка, тогда псевдоним подкаталога
Я использую django 1.7.7 с python 2.7.9 на debian jessie. example.com и example2.com оба обслуживаются apache 2.4.10 с модулем WSGI 4.3.0.
В Apache глобальной конфигурации области видимости у меня есть:
WSGIDaemonProcess tracking user=www-data group=www-data processes=2 threads=15 python-path=/path/to/projects/tracking/ display-name=wsgi-django-tracking
В example.com виртуальный хост у меня есть:
WSGIScriptAlias//path/to/projects/tracking/tracking/wsgi.py
WSGIProcessGroup tracking
<Directory /path/to/projects/tracking/tracking/>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
В example2.com виртуальный хост меня (обратите внимание на /MyApp по крайней конец обоих параметров команды WSGIScriptAlias):
WSGIScriptAlias /myapp /path/to/projects/tracking/tracking/wsgi.py/myapp
WSGIProcessGroup tracking
<Directory /path/to/projects/tracking/tracking/>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
В настройках Джанго У меня есть:
ALLOWED_HOSTS = ["example.com", "example2.com"]
С DEBUG=True
все прекрасно работает. Когда я установил DEBUG=False
, example.c продолжают работать, но когда я пытаюсь получить доступ к http://example2.com/myapp все я есть:
Bad Request (400)
Ничто полезное показывает в /var/log/apache2/error.log
ни /var/log/apache2/access.log
так I'am немного запутались.
Благодарим за помощь.
Благодаря ФОТ ответ, я проверил, имя хоста присутствует. Более того, у меня точно такое же поведение, что и установка 'ALLOWED_HOSTS = ['*']' – Nit
Убедитесь, что ваш 'ALLOWED_HOSTS' не перезаписывается позже в коде. – GwynBleidD
Вот и все, теперь я чувствую себя очень глупо, спасибо! – Nit