Вебзик
СОЗДАНИЕ КАЧЕСТВЕННЫХ САЙТОВ
ИНТЕРНЕТ-МАГАЗИНЫ ПОД КЛЮЧ

Переходим на HTTPS на примере CMS MODX EVOLUTION

17.02.2019 | Мастерская

Не так давно заметил, что в Яндекс-вебмастере появилось сообщение о новой проблеме с протоколом HTTPS. Теперь не только Google но и Яндекс считает недостатком работу сайта по старому не безопасному протоколу HTTP. Во и пришёл момент, когда я серьёзно задумался о смене протокола сайта на безопасный. Для работы по HTTPS обязательно нужен SSL-сертификат. Первым делом глянул что предлагает мой хостинг – там одни платные варианты от 800 руб.год. Нет мне платные варианты не подходят так как домен оформлен на физическое лицо, и лишние траты мне точно не нужны.

Поиск привёл меня к возможности получить бесплатный сертификат SSL для моего домена через сервис Let's Encrypt, единственным недостатком было то, что срок действия данного сертификата всего 3 месяца, далее надо генерировать новый. Решил поискать хостинги которые позволяют работать с этим сертификатом и автоматически продлевать его. Как оказалось таких достаточно  много. В итоге я остановился на Багете (не реклама просто там мне дали целый месяц бесплатного тестирования). Перенёс туда свой сайт, поставил сертификат всё быстро и занимает не более 10-15 минут.

Так как сайт у меня на CMS MODX Evo опишу, как я переходил на протокол HTTPS именно для этой системы.

И так после получения бесплатного SSL-сертификата от Let's Encrypt и установки его на сервер заходим в панель Администрирования вашего сайта (CMS MODX Evo) далее Конфигурация – Сайт находим параметр Тип сервера и там выбираем https,  сохраняем изменения.

меняем в панели администратор тип сервера https

Теперь нужно заменить все абсолютные пути ссылок на относительные (в чанках, шаблонах, некоторых не стандартных сниппетах и модулях если таковые имеются). Вместо полного адреса http://mysite.com/script.js вам нужно прописать //mysite.com/script.js, то есть убрать протокол.

Для моей системы управления это выглядит примерно так

меняем пути к ссылкам на относительные

Теперь необходимо настроить 301-редирект дабы люди, которые будут заходить на ваш сайт по старым ссылкам попадали на нужные страницы но уже по протоколу HTTPS. Для этого открываем файл .htaccess, который лежит в корне вашего сайта и добавляем такую запись (работает на хостинге Багет) на других возможно нужно будет настроить по другому исходя из работы самого сервера

#redirect http to https
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Проверяем есть ли редирект, если всё хорошо, то переходим в Яндекс-вебмастер открываем ваш сайт (если его там нет то добавляем сайт с новым протоколом https) во вкладе Индексирование _ переезд сайта можно указать нужный протокол для сайта который уже есть.

в Яндекс-вебмастере выбираем протокол https

В принципе всё теперь нужно подождать какое-то время пока Яндекс выберет новый протокол в качестве основного зеркала. Я обычно ещё удаляю в вебмастере старую карту сайта xml и загружаю новую с https и в файле robots.txt меняю протокол на https в директории HOST и SITEMAP.

Если вам нужна помощь в переводе вашего сайта на протокол https, обращайтесь к нам.
Источник: Создание Сайтов НН