Тот же документ на новом протоколе
Для поиска адрес на http и адрес на https с одним и тем же путём — два входа в один документ, пока главный не выбран. Если оба входа спокойно отдают страницу, в индексе могут оказаться копии. Главным я оставляю https и не держу старую схему как отдельный сайт.
Старый http-адрес должен отвечать переходом на тот же путь на https.
Внутри сайта я убираю старые адреса. Ссылка в меню, в тексте или в подвале на http сначала уводит человека на старую схему. Канонический адрес и карта сайта на http сами показывают поиску старый вариант. В настройках движка я тоже меняю основной адрес на https. Иначе движок продолжает печатать старые ссылки сам, даже когда часть страниц я уже поправил руками.
- Ссылки в меню, в тексте и в подвале ведут на https.
- Канонический адрес страницы записан с https.
- Карта сайта перечисляет адреса только с https.
- Форма отправляет данные на обработчик с https.
- В настройках движка основной адрес сайта указан с https.
Чужие ссылки со старой схемой я не собираю и не прошу переписать. Имя сайта то же, путь тот же. Отдельно чинить чужие упоминания ради смены протокола не нужно.
Смешанное содержимое
Страница может открываться по https, а картинка, стиль, шрифт или скрипт на ней всё ещё запрашиваться по http. Это смешанное содержимое. Оболочка защищена, а кусок документа едет открытым каналом. Для человека страница вроде на месте, но соединение уже нельзя назвать закрытым целиком.
К таким кускам браузер относится по-разному. Скрипт, стиль, шрифт и вставку с другого адреса он обычно блокирует: страница приезжает дырявой, кнопка или форма молчит. Картинку он может показать, но пометка защищённого соединения пропадает. Иногда браузер сам пробует забрать тот же файл по https. Если источник так не отвечает, блок пропадает или остаётся дырой. В магазине это видно сразу, когда скрипт корзины или оплаты остался на старом протоколе: витрина открыта, а действие не работает.
Большая карточка уже собрана, а два блока рядом с ней так и не присоединились.
Ищу это в самом браузере. Открываю страницу и смотрю консоль: там видно, какой файл заблокирован или приехал по небезопасному адресу. Потом прохожу код страницы и выписываю адреса картинок, скриптов, стилей и шрифтов, которые начинаются со старой схемы. Отдельно проверяю виджеты, старые баннеры и счётчики. Их ставят один раз и забывают, а внутри остаётся http.
Чиню заменой на https, если источник уже умеет защищённое соединение. Если не умеет, забираю файл к себе на сайт или убираю блок. Картинку на http не оставляю только потому, что она видна: из-за неё страница перестаёт быть защищённой целиком. На старых шаблонах ещё встречается адрес без схемы, он начинается с двух косых. Такой адрес я меняю на явный https, чтобы шаблон не выбирал протокол сам.