Никак. В остальной части статьи я рассказываю, что всё-таки можно
А теперь подробнее
Для начала надо ответить на несколько вопросов: что такое HSTS? Как его настроить? И зачем может понадобится его отключить?
Что такое HSTS?
HSTS (HTTP Strict Transport Security) - это механизм безопасности веб-сайтов, который обеспечивает защищенное соединение, используя HTTPS-протокол. Он заставляет браузеры использовать только защищенное соединение с веб-сайтом в течение определенного периода времени, даже если пользователь вводит в адресной строке незащищённый URL-адрес.
Незащищённый URL-адрес в контексте HSTS - это адрес веб-сайта, который не поддерживает HTTPS-протокол. Если пользователь попытается зайти на такой сайт, браузер автоматически перенаправит его на защищенное соединение с тем же доменным именем. HSTS не позволяет браузеру использовать незащищенное соединение с веб-сайтом, даже если пользователь явно введет протокол HTTP в адресной строке.
Предыдущие два абзаца для меня сгенерировал AI T9 из Notion. Извените ¯\_(ツ)_/¯
Как настроить HSTS?
Настройка HSTS в nginx включает несколько шагов:
Я должен признать, что T9 на стероидах творит чудеса. Ну, вы поняли ;-)
Если открыть эту статью на Хабре, то можно понять, что я, кажется, подложил себе свинью указав в конфиге основного домена includeSubdomains со сроком в год, но слава всевышнему этот кеш, в котором хранятся HSTS заголовки, можно подчистить.
В Хроме это делается ваще легко:
Открываем страницу chrome://net-internals/#hsts и видим, что можем вручную добавить домен, запросить его статус и удалить.
В Firefox с этим всё сложнее. Мне лень это писать самому потому, что всё уже написано за нас, а что не написано, то будет сгенерировано искусственным, прости господи, интеллектом. Лови луддита!
Так вот цитата с первого попавшегося сайта, но я её не проверял:
Зачем вообще отключать HSTS?
Вот тут-то и кроется самая мякотка.
Иногда, когда подлкючаешься к публичному вайфаю, нужно форсировать перехват и редирект на captive портал. Например, когда нечаянно смахнул уведомление в шторке о подключении к сети.
В таких случаях я обычно открывал страницу http://opennet.ru, но мне, в какой-то момент показалось, а может и не показалось вовсе, а так и есть, что там включили редирект на https и я решил сделать у себя на сайте такую http-only страницу. Сначала я делал на домене http://g.inoy.dev, но чёртов Гугл — владелец этой доменной зоны — форсит HSTS для всех доменов в этой зоне. Ладно, думаю я, и делаю http-only поддомен на http://g.inoyakaigor.ru/ и опять ничего не работает.
Тут я отчаялся и решил проверить в браузере настолько старом, чтобы в нём про HSTS ничего не было или, хотя бы было не так жёстко. Я скачал портативную версию Firefox 50 и, таки да, всё работает как часы:
Более того в старом Firefox даже *.dev Домены работают как исторически задумано, а не как того хочет большая корпорация
Тем не менее, когда я проделал все эти операции с браузерами, всё заработало как и было задумано и я даже успел воспользоваться этой страницей
Будьте те, кто это придумал прокляты.