SEOFAQ Telegram, маркетинг и SEO Канал SEOFAQT в мессенджере Telegram

Все чаты1. сценарий у вас 1 сайт на сервере, и в таком случае он выдает...


1. сценарий у вас 1 сайт на сервере, и в таком случае он выдает то что не может найти ключей.

2. у вас 2 и более сайтов на данном сервере и тут могут уже быть варианты. Это связано с тем что работа apache и nginx имеет фундоментальный костыль не стыкующийся с RFC TCP\IP

Когда встал вопрос о том что не хватает IPv4 то придуман был костыль в частности в обход RFC на одном айпи и порту может висеть несколько сайтов.

Схема такая http reffery разбирается apache и на основание http_host он подставляет конфиг.

Но когда это придумывали слыхом не слышали о HTTPS соответственно когда встал вопрос о HTTPS не долго думая его повесили на 443, и все было бы здорово до 1 пункта костыля.

Как мы понимаем при https -вначале ключи потом данные, включая HTTP_HOST, а как следствие apache не в состояние технически определить какой это сайт !!!

А главное, поскольку порт открыт а на нем висит apache то возникает интересная ситуация в которой :

а ) если у вас более 1 сайта то ВСЕ сайты у вас имеют HTTPS хотите вы этого или нет, пока не будет ключей апачь не узнает что это за сайт. Даже если в конфигах этого сайта вообще нет HTTPS

б) и тут самое гениальное, для решения пункта а) в веб серверах сделано гениальное решение, они ищут ближайший конфиг с ключами ( сортировка по имени) и подставляют эти ключи!

как следствие и этот конфиг.

В результате вы можете получить чужой контент на своем сайте.

Обойти это можно только двумя способами.

1. в шаблонах nginx +apache указать дефолтные ключи, в не зависимости требуется ли сайту https, если оно не требуется то уводить в 402, физически отключить https не получится!

2. Указывать редирект через CNAME - этот механизм срабатывает до веб сервера !

Источник новости https://t.me/digitalklondike/6...