Переезд сайта с http на https — это обязательный шаг, который должен сделать современный сайт для того, чтобы обеспечить безопасность пользователей. О том, что такое HTTPS, его преимуществах и том, как на него переехать, поговорим сегодня.
Видеоинструкция
Что такое HTTPS протокол
HTTPS (HyperText Transfer Protocol Secure) протокол — это расширение протокола HTTP, поддерживающее шифрование. При использовании данного протокола даже если кто-то находится в соединении между сервером и пользователем ему не будет доступна конфиденциальная информация, передаваемая во время сессии.
Преимущества переезда с http на https
Слева от URL страницы будет указан зеленый замочек, указывающий на безопасное соединение.
При попытке ввести информацию на сайте с http в Google Chrome можно увидеть уведомление о том, что сайт «Не защищен».
В поисковой выдаче Яндекса https протокол также помечается специальным шильдиком.
Проверить соответствует ли сайт всем требованиям для получения шильдика можно в Яндекс.Вебмастер в разделе «Качество сайта»-«Показатели качества».
Также наличие протокола влияет на ранжирование в Google.
Также в отличие от http, https не дает возможности операторам связи выводить рекламные блоки на сайте без ведома владельца.
Как переехать с http на https
Для этого потребуется выполнить следующие действия:
- Получить SSL-сертификат;
- Установить его на сервере;
- Подготовить сайт к переезду;
- Поставить редирект;
- Оформить переезд;
- Дождаться окончания смены зеркал.
Получение SSL-сертификата
Получить SSL-сертификат можно тремя основными способами, среди которых:
- Приобрести платный сертификат;
- Получить бесплатный у хостера;
- Получить бесплатный самостоятельно.
Покупка SSL-сертификата
Может быть произведена как у хостера, так и у иных продавцов, как правило, для этого достаточно войти в данный раздели кликнуть на «Заказать».
Приобретаем нужный нам сертификат.
В этом случае будет получен более серьезный уровень защиты, а также не потребуется обновлять документ каждые 3 месяца (в отличие от 3-го способа).
Получить бесплатный SSL-сертификат у хостинг-компании
Большинство современных хостинг компаний предоставляют бесплатный SSL, получить который можно в том же разделе только выбрать нужно услугу Let’s Encrypt.
Важно! Во многих случаях услуга бесплатна только на определенный период, например, год поэтому перед подключением следует внимательно изучить все
Получение бесплатного SSL-сертификата самостоятельно
В первую очередь посещаем сайт sslforfree, где понадобится зарегистрироваться и залогиниться перед выполнением дальнейших действий.
Теперь вписываем адрес сайта (Важно! Если выдается сертификат для поддомена, то необходимо ввести его адрес, например, poddomen.site.ru) и нажимаем на «Create Free SSL Certoficate».
В появившемся окне «ZeroSSL» выбираем «New Certificate».
Вводим домен, например, «seopulses.ru».
Выбираем 90 дней.
Важно! Бесплатно можно получить только на 90 дней!
Оставляем все без изменений и переходим на следующий шаг через кнопку «Next Step».
Теперь нам предлагается 3 способа подтверждения:
- Через почту;
- DNS;
- Загрузку HTTP файла.
О каждом из этих способов указано ниже.
Подтверждение по почте
В этом случае система предложит написать на одну из почт:
- admin@
- administrator@
- hostmaster@
- postmaster@
- webmaster@
В этом случае будет отправлено письмо с кодом на указанный электронный адрес, через которое можно будет подтвердить информацию.
В этом случае лучше всего:
- Подключиться доменную почту на сервере;
- Подключиться к Яндекс.Коннекту (есть бесплатный тариф);
- Mail.ru для бизнеса (есть бесплатный тариф);
- GSuite (От 5,4$ за пользователя).
Если указанной почты нет среди аккаунтов, то следует ее создать, например, в интерфейсе Яндекс.Коннекта это выглядит так:
Отправляем письмо для проверки.
В системе видно, что сообщение отправлено.
Далее приходит письмо на почту, где нужно скопировать проверочный код и перейти на страницу верификации.
На проверочной странице вводим ключи и нажимаем на «Next».
Закрываем страницу.
В ZeroSSL обновляем статус заявки.
Видим, что все прошло успешно и кликаем на «Install Certificate».
Скачиваем бесплатный SSL-сертификат через кнопку «Download Certificate (.zip).
При необходимости можно сказать в разных форматах, например, для:
- Apache;
- AWS;
- cPanel
- NGINX;
- Ubuntu;
- И многих других.
Далее переходим к установке его на сервер.
Важно! Одни аккаунт может иметь до трех доменов с сертификатами бесплатно.
Подтверждение бесплатного SSL-сертификата через DNS
На этапе выбора подтверждения кликаем на «DNS», где получаем нужные данные для ввода.
На следующем шаге видим, что система мониторит записи для подтверждения.
Переходим к хостинг-провайдеру (или другой интерфейс, куда через NS был делегирован домен) и переходим к редактированию DNS.
Добавляем новую TXT-запись.
Вводим выданные нам значения.
Важно! Name содержит запись для поддомена (111.site.ru), следует вводить только указанный только до домена код.
Важно! Во многих системах интерфейс может быть различных, например, на примере в Timeweb не требуется ввод TTL, поэтому это опускаем.
Все готово, можно переходить к его установке.
Подтверждение бесплатного SSL через HTTP-файл
Выбираем пункт для подтверждения «HTTP File Upload» и скачиваем файл.
Система начинаем проверку.
Далее переходим в панель управления сервером или FTP-аккаунт, где в корневой папке сайта (как правило, public_html) создаем папку «.well-known».
В ней аналогично создаем еще одну папку «pki-validation».
Загружаем файл, скачанный в самом начале инструкции.
Все готово подтверждаем информацию (аналогично почте) и получаем сертификат.
Установка SSL-сертификата на сервер
В первую очередь распаковываем архив с сертификатом и видим, что он состоит из:
- certificate.crt (сертификат);
- private.key (приватный ключ);
- ca_bundle.crt (промежуточный сертификат).
Данный пункт необходим тем, кто не смог получить его у хостера и приобрел его не у своего провайдера. Для этого посещаем раздел «SSL», где выбираем пункт «Установить».
Вводим в соответствующие поля свой файл и завершаем установку.
Важно! Если не имеется навыка работы с интерфейсом хостинг компании (у некоторых провайдеров отсутствует возможность загружать сертификат самостоятельно в интерфейсе) рекомендуется загрузить архив с сертификатом на сервер и написать в поддержку с просьбой об установке.
Подготовка к переезду с http на https
Далее открывается сайт с версией https, например, https://seopulses.ru и проверяется корректность его работы.
Важно! Лучше всего проверить, чтобы в коде сайта не оставалось ссылок на страницы старого протокола (http) для этого в браузере Google Chrome кликаем правой клавишей мыши в любой области и в выпавшем меню выбираем «Посмотреть код страницы» (сочетание клавиш CTRL+U)
На открывшейся странице кликаем на «Меню» (правый-верхний угол) и нажимаем «Найти…» (сочетание клавиш CRTL+F) и вводим адрес сайта с http.
Проверяем, чтобы его не было этих упоминаний (указывается как 0/0).
Для подтверждения факта, можно проверить, что у URL в браузере будет указан зеленый замочек.
Если же появляются проблемы, то лучше всего обратиться к разработчику, чтобы он настроил корректное отображение сайта для действующей CMS-системы.
Поставить редирект с http на https
Для популярных CMS-систем уже имеются плагины/модули для выполнения этого шага без работы с кодом, но универсальным способом является ввод нового правила в файл htaccess, который можно найти в корневой папке сайта на сервере.
В конце файла дописываем одну из конструкций.
Важно! В зависимости от настроек сервера может сработать одна из четырех, поэтому лучше всего пробовать каждую по очереди.
Версия #1
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-HTTPS} !1
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Версия #2
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-HTTPS} !1
RewriteCond %{HTTP_HOST} ^domain\.ru$
RewriteRule ^(.*)$ https://domain.ru/$1 [R=301,L]
Здесь вместо domain и domain.ru следует указать адрес своего сайта.
Версия #3 с отключением перенаправления для robots.txt
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-HTTPS} !1
RewriteCond %{REQUEST_URI} !robots.txt
RewriteRule ^(.*)$ https://domain.ru/$1 [R=301,L]
Версия #4
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-HTTPS} !1
RewriteCond %{HTTP_HOST} ^domain\.ru$
RewriteRule ^(.*)$ https://www.domain.ru/$1 [R=301,L]
Для проверки корректности работы следует в инструменте «Проверка ответа сервера» ввести URL с http и получить 301 редирект на новую версию https.
Все готово можно оформлять переезд.
Переезд сайта в Яндекс.Вебмастер и Google Search Console
Переезд сайта в Яндекс.Вебмастер
В первую очередь добавляем все версии сайта в Яндекс.Вебмастер, куда включаются:
http://
https://
http://www.
https://www.
Далее переходим в версию со старым протоколом http в раздел «Индексация»-«Переезд сайта», где ставим «Да» у пункта «Добавить HTTPS» и сохраняем изменения.
Если редирект и другие пункты были настроены верно, то видим, что будет оформлена заявка на смену зеркал.
Все готово, переходим к Google Search Console.
В Google Search Console
Здесь понадобится аналогично Яндекс.Вебмастеру подтвердить все версии сайта.
Все готово, дополнительных действий не требуется производить, постепенно в отчете эффективности можно будет увидеть, как трафик перетекает на https.
Смена зеркал
Следует проверять только в Яндекс.Вебмастере примерно через 1-3 недели после оформления переезда придет письмо и оповещение в системе, что главное зеркало у старой версии изменилось.
Далее следует проверить это в интерфейсе Яндекс.Вебмастера, где это выглядит, как:
Как видно из скриншота все версии указаны под главным зеркалом.
Все готово, сайт полностью переехал с http на https.
Подписывайтесь на наш канал в Яндекс.Дзен
Подписывайтесь на наш Telegram-канал
Подписывайтесь на наш Youtube-канал
Подписывайтесь на нашу группу ВКонтакте
Добрый день, доя решения проблем со смешанным контентом ( mixed content ) разработали сервис http2https . Более подробно можно прочитать на
https://http2https.HRNA.ru/
.#https #http2https #ssl #imgproxy