Мой Chrome (40.0.2214.115m) переходит на несуществующий https:
Я печатаю в
И Chrome перенаправить на
http s: //johnwhitech.homeip.net: 8080 /
который не существует. я делаю не везде есть HTTPS.
В сетевом анализаторе я вижу, что мой сервер ответил на редирект 307, который не правда (apache настроен правильно и не дает такого ответа, другие браузеры не перенаправляют, HTTP-пакеты зацикливаются совершенно нормально).
Я попытался войти запрос с Fiddler, вот оно:
СОЕДИНИТЬ johnwhitech.homeip.net:8080 HTTP / 1.1
Ведущий: johnwhitech.homeip.net:8080
Подключение: keep-alive
Пользователь-агент: Mozilla / 5.0 (Windows NT 6.3; WOW64) AppleWebKit / 537.36 (KHTML, как Gecko)
Chrome / 40.0.2214.115 Safari / 537.36
Обнаружено совместимое с SSLv3 рукопожатие ClientHello. Fiddler извлек параметры ниже.
...
Другая странная вещь: в столбце HOST fiddler, если я пытаюсь использовать firefox, я вижу имя моего сервера. С хромом я вижу "Tunnel to ..." даже для самого первого запроса. Протокол действительно HTTP (посмотрите на начало пакета), но почему в моем очаге вместе с ним отправляется SSL "ClientHello"?
Это нормальное поведение?
Единственное, что я вижу, что может быть связано с SSL - это то, что я установил самозаверяющий сертификат, сначала через настройки Chrome, а затем по всей системе. Этот сертификат работает хорошо, но, возможно, поскольку доменное имя соответствует сертификату в списке, chromes пытается SSL?
Спасибо, ребята!
EDIT3: это поведение также происходит без подключения к Интернету (кэш очищен), поэтому определенно не на стороне сервера
РЕДАКТИРОВАТЬ 4: Что я вижу на вкладке «СЕТЬ» Chrome Dev Tools. Первая запись нормальная, вторая запись через HTTP, который сразу же перенаправляется на HTTPS. Это происходит без подключения к сети, в частности, сервер не отправка HSTS.
источник
CONNECT
потому что именно так HTTPS работает с (непрозрачными) прокси. Кстати, Фиддлер это прокси. Вместо этого вы должны сосредоточиться на том, делает ли Apache перенаправление или нет. Используйте Wireshark илиtcpdump
анализировать трафик на вашем сервере.Ответы:
Chrome четко указывает причину: HSTS. HSTS, как только получил, прилипает. Это неотъемлемая часть концепции. Это означает, что если Chrome получил HSTS-заголовок от вашего сервера, даже если только один раз, он будет придерживаться до его истечения.
Чтобы проверить HSTS-кэш Chrome, перейдите на
chrome://net-internals/#hsts
, Оттуда вы можете запросить кэш. Если в сообщении «Не найдено» Chrome есть кэшированный заголовок HSTS на вашей странице. Чтобы удалить его, используйте инструмент на той же странице.источник