Как перевести сайт с HTTP на HTTPS

Как перевести сайт с HTTP на HTTPS
Материал добавлен: 12 Июля 2021
Материал обновлен: 14 Июля 2021

Сегодня мы обсудим материал о том, как подготовить свой сайт заранее к переходу на HTTPS перед покупкой сертификата. Это нужно для того, чтобы после покупки сертификата у вас было меньше дополнительной работы, которую вам придется проделать на сайте. 

  1. HTTPS — Что это такое ?
  2. Почему стоит перейти на HTTPS ?
  3. Как исправить все ссылки с http на https ?
  4. Заменить абсолютные ссылки на относительные
  5. Проверить ссылки скриптов и сторонних библиотек
  6. Поправить ссылки в атрибутах rel=«canonical» и rel=«alternate»
  7. Обновить ссылки на внешние ресурсы
  8. Проверить страницы на ошибки Mixed Content
  9. Перепроверить sitemap.xml и robots.txt
  10. Поправить ссылки на сайт в социальных сетях и других внешних источниках
  11. Добавить сайт в поисковые системы по HTTPS

HTTPS — Что это такое ?

HTTP (HyperText Transfer Protocol) — «протокол передачи гипертекста». В наше время повсеместно используется для получения информации с веб-сайтов. Все сайты сразу работают на HTTP. Когда пользователь вводит личную информацию на сайте, браузер в открытом виде передает ее на сервер. Этим и пользуются мошенники, перехватывая личные данные.

HTTPS (HyperText Transfer Protocol Secure) — расширение протокола HTTP для поддержки шифрования в целях повышения безопасности. В этом случае личная информация передается уже не в открытом виде, а в зашифрованном. Принципом работы этого протокола является обмен ключами шифрования. Но для этого нужно, чтобы владелец сайта получил и установил SSL-сертификат на сайт.

Выпустить бесплатный SSL сертификат

SSL-сертификат — сертификат электронной подписи, содержащий открытый ключ и информацию о владельце, подписанный выдавшим его Центром сертификации и подтверждающий принадлежность владельцу.

Сервер, прежде чем ответить на запрос от браузера, предъявляет ключ шифрования — SSL-сертификат, браузер проверяет его подлинность в Центре сертификации, и если все в порядке, то браузер и сервер «доверяют» друг другу и «договариваются» о разовом шифре для защиты передаваемых данных. Так происходит при каждой сессии.

Почему стоит перейти на HTTPS ?

Преимущества использования SSL сертификата:

  1. Повышение безопасности при обмене данными с пользователем. Использование HTTPS позволяет защитить данные от перехвата злоумышленниками и третьими лицами.

  2. Повышение уровня доверия у пользователей (посетителей) вашего сайта. Пользователи обращают внимание на наличие HTTPS при оплате заказов в интернете и передаче персональной информации.

  3. Сохранение / повышение конверсии. Учитывая, что сейчас в сети интернет лидирующий браузер Google Chrome, он напрямую помечает страницы, которые собирают персональную информацию (пароли, данные оплаты, формы обратной связи или формы авторизации и другие поля где вводится информация) как небезопасные — конверсия таких страниц неизбежно падает.

  4. Наличие HTTPS как фактор ранжирования. Google — напрямую заявляет, что они учитывают наличие SSL-сертификата у сайта, как один из факторов ранжирования. В Яндексе наличие HTTPS-версии также учитывается с 2011 года в составе группы коммерческих факторов ранжирования, которые используются для упорядочивания выдачи по коммерческим запросам.

Как видите, от подключения к вашему сайту SSL сертификата, вы получаете лишь преимущества. Доверие посетителей сайта, браузеры не помечают ваш сайт как опасен, и ваши материалы в поисковиках ранжируются выше в отличие от сайтов у которых нет SSL сертификата.

Как исправить все ссылки с http на https ?

Основная цель подготовки сайта к переходу на SSL, чтобы все ссылки на вашем сайте были указаны с https, все это достигается несколькими шагами, о чем подробнее описано немного ниже.

Заменить абсолютные ссылки на относительные

Если вы еще на этапе подготовки этот шаг пропустили, то самое время их поправить. 

Перейдите в замена участков кода в поле "Что" пропишите:

http://ваш-сайт.ру/ 

в поле "На" вставьте ссылку:

https://ваш-сайт.ру/

В блоке "Заменять" вам нужно отметить пункты:

  • в глобальных блоках
  • в шаблонах «Вид материалов»
  • без учета регистра символов

Ниже в блоке "В каких модулях", ничего не отключать, должны быть отмечены все модули и нажмите кнопку "Сохранить".

Так же можно заменить и по другому, можно по всему шаблону заменить ссылки на главную сайта с абсолютной:

http://ваш-сайт.ру/

на относительную:

/

Все верно, ссылку на главную заменяем лишь на слэш.

Примечание! Преимущество замены ссылки с абсолютных на относительные в том, что в будущем если вы решите перейти на SSL или отключите его ссылки на страницы будут работать в любом случае и повторно исправлять ссылки не придется.

То есть, относительные ссылки работают правильно, независимо, имеете ли вы SSL или нет, домен с протоколом будет подставляться к всем ссылкам сайта автоматически.

Важно! Если вы в материалах сайта (новостях, блоге, статьях или других модулях) использовали ссылки на изображения с протоколом http, вам придется такие материалы по отдельности редактировать вручную и обновлять ссылки прописывая протокол https или делая относительный адрес к фото.

Подробнее о том, что такое абсолютные и относительные ссылки: http://htmlbook.ru/samhtml/ssylki/absolyutnye-i-otnositelnye-ssylki

Важно! Вместо примера сайта ваш-сайт.ру вы должны указать ваш адрес сайта, не наш пример.

Проверить ссылки скриптов и сторонних библиотек

Это также лучше было бы сделать еще на этапе подготовки. Что в данной ситуации требуется от вас, вам нужно проверить в Панели управления сайтом с раздела Дизайн - Управление дизайном /panel/?a=tmpl все активные модули и глобальные блоки (их код). 

  • Проверить как у вас подключаются скрипты java script, если найдете по протоколу http, нужно заменить на https.
  • Проверить как у вас подключены файлы стилей CSS, могут быть прописаны по протоколу http, нужно заменить на https.
  • Проверить напрямую таблицу стилей CSS в которой могут быть прописаны ссылки на изображения с протоколом http, нужно заменить на https или прописать относительные ссылки на файлы изображений.

Примечание! Заменять ли в шаблонах ссылки на скрипты, файлы стилей и изображения с протоколом http на https, решение принимать исключительно вам, стоит так же помнить, что вы можете указать относительные адреса.

Поправить ссылки в атрибутах rel=«canonical» и rel=«alternate»

Эти данные прописываются в коде страницы, и ведут соответственно на канонические и альтернативные страницы (на языковые версии страницы, например).

Проверьте шаблоны страниц:

  • Страницы сайта;
  • Страница материалов категории;
  • Страница материалов раздела;
  • Cтраницы материала и комментариев;
  • Страница товара.

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

Примечание! Если вы на сайте оплачиваете тариф Оптимальный либо выше и у вас в Seo-модуле в "Премиум настройках" активен пункт "Использовать атрибут rel="canonical" для материалов", вам ссылки вручную исправлять не придется, система автоматически сформирует корректную ссылку при переходе на HTTPS. 

Обновить ссылки на внешние ресурсы

Уже очень много сайтов перешли на https, так что перепроверьте, чтобы с вашего сайта не было устаревших исходящих ссылок на сайты с http.

Проверить страницы на ошибки смешанного содержания

Если где-то на страницах (в перелинковке, контенте, кнопках и т.п.) будет указана ссылка на http, то будет выдаваться ошибка «Смешанное содержание». 

Чтобы найти такие ошибки, вам достаточно на странице где некорректно работает SSL после подключения, зайти в просмотр кода страницы (кликнуть правой кнопкой мышки на странице → посмотреть код → открыть вкладку Безопасность) и посмотреть, нет ли там сообщения об ошибке Mixed Content где вы найдете ссылку на изображение или скрипт с протоколом http, далее проверяем что это за файл и исправляем.

Примечание! Так же, после подключения сертификата вам нужно будет выполнить дополнительную настройку, а именно перейти в Панель управления → Настройки → Основные → URL адрес вашего сайта.

Проверьте в данном поле, чтобы адрес сайта был с https, если будет с http, оператор $HOME_PAGE_LINK$ будет неправильно формировать ссылку на главную сайта из-за чего могут быть ошибки Mixed Content.

Перепроверить sitemap.xml и robots.txt

Оба файла уже должны быть доступны по https, карта сайта должна формироваться уже из URL в новом формате, а в роботс должны быть указаны ссылки на домен и карту сайта через https.

То есть, после перехода на SSL ваш сайт работает по HTTPS протоколу, вам нужно в файловом менеджере найти файл robots.txt напротив которого нажмите иконку карандашика, найдите прямые ссылки на карту сайта подобно:

Sitemap: http://site.ucoz.ru/sitemap.xml
Sitemap: http://site.ucoz.ru/sitemap-forum.xml
Sitemap: http://site.ucoz.ru/sitemap-shop.xml

вам нужно в этих ссылках исправить протокол http на https.

Важно! После подключения SSL сертификата, чтобы в картах сайта обновились ссылки на материалы с http на https, нам нужно в файловом менеджере удалить старые файлы на карты сайта, которые были на фтп до подключения сертификата. После удаления и повторного перехода по прямой ссылке на карту сайта, файл автоматически сгенерируется новый.

Достаточно один раз после удаления файлов перейти по каждой из ссылок sitemap, система обновляет этот файл автоматически, вам ничего повторно выполнять не придется.

Поправить ссылки на сайт в социальных сетях и других внешних источниках.

Не забудьте обновить адрес сайта в своих аккаунтах соцсетей и других внешних источниках трафика, если они есть. Чтобы весь трафик шел не через редирект, а напрямую.

Добавить сайта в поисковые системы по HTTPS

После того как вы выполнили переход на HTTPS, для сайт куплен SSL сертификат и сайт стабильно работает по https, вам нужно добавить сайт как в Google так и Яндекс по протоколу https.

Что важно при переходе на HTTPS в поисковых системах, так это то, что вам нельзя удалять старый сайт с вебмастера который вы ранее добавляли еще до перехода на SSL.

После того как вы добавите дополнительно сайт по HTTPS в вебмастера Google и Яндекс, вам нужно перейти в Яндекс Вебмастер, найти старый сайт без протокола HTTPS, перейти в раздел "Индексирование" - "Переезд сайта", далее нужно отметить пункт "Добавить HTTPS" и нажмите кнопку "Сохранить".

Вот так вы сообщите Яндекс Вебмастеру, что нужно выполнить смену зеркала для сайта с HTTP на HTTPS. На новое зеркало будет передан ИКС и все внешние ссылки. Обычно процесс смены зеркала для сайта занимает не меньше 2-х недель, нужно набраться терпения и ожидать.

Важно! Отметим, что после смены зеркала для старого сайта, который доступен по протоколу http, в вебмастере количество этих страниц будет стабильно уменьшаться и соответственно для сайта по протоколу HTTPS будет стабильный прирост страниц, пока сайт полностью не проиндексируется по новому зеркалу.

Стоит отметить дополнительно, что для Google Webmaster такого инструмента по смене зеркала как у Яндекса нет, Google все выполняет автоматически и вам ничего дополнительно выполнять в гугл вебмастере не придется.

Так же важно, после перехода сайта на SSL сертификат, следите за сроком действия сертификата, если будет подходить к концу срок регистрации, нужно перевыпускать и повторно прикреплять сертификат в течение нескольких часов, не запускать этот процесс на несколько суток.

Если за этим не следить и пропустить дату окончания срока регистрации сертификата, зеркала в Яндекс вебмастере расклеятся и сайт снова начнет индексироваться по протоколу HTTP и соответственно будут потери по посещаемости.

Как перевести сайт с HTTP на HTTPS