Я установил сервер по умолчанию для своего nginx, который должен отвечать на все запросы на основе IP, а также на все поддельные и любые другие. Это срабатывает почти всегда.
Запрос сайта, подобного следующему, обслуживает сайт из моего приложения вместо сервера по умолчанию:
http https://my-app.com 'Host:my-app.com:443@whateverfake.com'
Запрашивая это так:
http https://my-app.com 'Host:myyy-app.com:443@whateverfake.com'
Обслуживается сайт по умолчанию.
В моем приложении есть обычная строка server_name, например:
server_name my-app.com;
Как это можно правильно настроить? Или это ограничение в nginx? Или у меня плохо? @ In hosts обычно используется при указании базовой аутентификации, верно?
Дополнительная информация: мое приложение Django, получив запрос, жалуется, что заголовок недействителен согласно RFC 1034/1035. Так, может быть, nginx должен немедленно сбросить запрос?
Еще больше информации: такое поведение было обнаружено во время проверки безопасности. Так что это не имеет ничего общего с реальным миром ...