Craftum — конструктор сайтов
Создайте сайт с помощью профессиональных шаблонов или придумайте дизайн с нуля

Как правильно перейти на HTTPS

2 комментария
Как правильно перейти на HTTPS

В 2014 году корпорация Google внесла изменения, благодаря которым у сайтов с протоколом HTTPS появился приоритет в поисковых запросах. Спустя три года алгоритмы ужесточились – без надлежащего сертификата веб-страницы вовсе стали отображаться с надписью «ненадежный». Вместе с этим Google выпустила ряд рекомендаций и правил, которые должны были помочь пользователям перейти на защищенный сертификат, однако у многих все равно возникли некоторые проблемы после переезда: посещаемость сайта заметно упала, страницы стали исчезать из топа и т.п.

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

HTTPS: что это такое и зачем на него переходить

По умолчанию все сайты начинают свой путь с HTTP-протокола передачи данных в интернете. Он использует технологию «клиент-сервер», работающую следующим образом: клиент инициирует соединение и отправляет запрос серверу, который в свою очередь ожидает соединения для получения запроса, выполняет определенные действия и отправляет обратно сообщение с результатом.

Во время передачи данных по HTTP устанавливается незащищенное соединение, поэтому злоумышленник может легко перехватить запросы: получить пароль пользователя, увидеть данные банковской карты и многое другое.

На смену HTTP пришел HTTPS — особое расширение протокола, включающее в себя настройки шифрования. Благодаря этому все платежи, покупки, пароли и прочие данные защищены, и добраться до них злоумышленнику практически невозможно. Также этот интернет-протокол позволяет повысить доверие пользователей, разместить рекламные баннеры в Google AdWords, получить приоритетное ранжирование в поисковых системах и многое другое.

Использование HTTPS сопровождается получением специального SSL-сертификата. Сертификаты разделяются на три вида:

  1. Domain Validation — необходим для подтверждения домена. Единственный сертификат, не требующий никаких документов для проверки. Получить его можно примерно через 10 минут после оплаты. Отлично подходит для небольших лендингов и сайтов-визиток.
  2. Organization Validation — требует подтверждения домена и организации. Получить такой сертификат можно только после проверки документов компании и телефонного звонка. Является более надежным и значимым: подтверждение организации увеличивает доверие клиентов. Рекомендуется использовать для сайтов крупных брендов, юридических компаний, интернет-магазинов. 
  3. Extended Validation — аналогичен предыдущему, но с расширенной проверкой. Отрасли использования: банки, крупные финансовые организации.

Каждый из вышеупомянутых сертификатов обеспечивает шифрование трафика между сайтом и браузером.

Резюмируя, стоит сказать, что переадресация с HTTP на HTTPS — надежный способ обезопасить свой сайт от злоумышленников и обеспечить пользователям конфиденциальность. О том, как правильно перейти на защищенное соединение, поговорим далее.

Переходим на HTTPS

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

Шаг 1: Подготовка сайта

Перед выполнением редиректа с HTTP на HTTPS рекомендуется исправить некоторые моменты в строчках кода, чтобы избежать возможных ошибок. Первый — внутренние ссылки.

Ошибка части этой страницы такие как изображения не защищены

Чтобы избежать предупреждения, указанного выше, необходимо изменить все внутренние ссылки с абсолютных на относительные. Например, ссылку http://ssl.ru/testpage/ потребуется заменить на /testpage/. Также стоит внимательно проверить все ссылки на скрипты в коде страниц. 

Второй момент — проверка медиаконтента, в который входят изображения, видеоклипы, презентации и прочее. Необходимо посмотреть, какой на страницах сайта используется контент и по какому протоколу он запрашивается. Если используется HTTP, то рекомендуется загрузить все файлы на сервер и установить относительные ссылки. В противном случае указывайте только проверенные сайты: YouTube, Facebook, VK и так далее.

Теперь можно переходить к подключению SSL.

Шаг 2: Установка SSL-сертификата

Как мы уже выяснили, чтобы перейти на HTTPS, требуется установка специального сертификата. Для начала его нужно заказать — сделать это проще всего в личном кабинете хостинга, обычно такие услуги предоставляются всем пользователям. Алгоритм везде одинаковый, поэтому рассмотрим, как эта процедура выполняется на Timeweb.

Устанавливаем SSL:

  1. Переходим в личный кабинет хостинг-провайдера и открываем раздел «SSL-сертификаты».Как установить SSL-сертификат на Timeweb
  2. Здесь мы можем не только заказать новый SSL, но и установить ранее приобретенный. Существует большое количество интернет-ресурсов, на которых продают сертификаты разной категории. Почитать о том, как это сделать, вы можете непосредственно на самих ресурсах, предоставляющих данный тип услуг. Поэтому не будем на этом останавливаться, перейдем сразу к заказу SSL через хостинг-провайдера.Как заказать новый сертификат на Timeweb
  3. Выбираем подходящий тип и указываем домен, на который будет установлен новый сертификат.Как мигрировать сайт с HTTP на HTTPS

Проверить подлинность сертификата можно на различных сервисах, например, Namecheap. Все просто: вводим домен с портом 443 и жмем «Check». При успешной проверке будет отображена надпись «It’s all good. We have not detected any issues».

Как проверить подлинность сертификата

После установки также рекомендуется убедиться, что сайт работает на обоих протоколах. Затем нужно сделать переадресацию с HTTP на HTTPS. Зачем это нужно, расскажем уже в следующем разделе.

Шаг 3: Настройка редиректа на HTTPS

Переадресация страниц нужна для того, чтобы пользователи, которые обратились к сайту по старому протоколу, автоматически подключились к новому адресу с HTTPS. Сделать это довольно просто – необходимо в директории сайта открыть файл .htaccess и добавить в него определенный код. Существует несколько вариантов кода.

Первый вариант:

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Второй вариант:

RewriteEngine On

RewriteCond %{HTTPS} =off

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Третий вариант:

RewriteEngine On

RewriteCond %{HTTPS} off

RewriteCond %{HTTP:X-Forwarded-Proto} !https

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Также мы можем сделать редирект с HTTP через административную панель CMS системы. В OpenCart для этого нужно открыть файл config.php и прописать в него следующее:

define('HTTPS_SERVER', 'https://yourdomain.com/');

В WordPress изменить wp-config.php:

define('FORCE_SSL_ADMIN', true);

Для получения подробной информации о редиректах на других CMS обратитесь к их документации.

Шаг 4: Настройка для поисковых систем

Если ваш сайт индексируется Google, Яндекс или другими поисковиками, то после перехода на HTTPS необходимо им об этом сообщить. В частности, нужно:

  1. Изменить все теги «rel=canonical» в HTML-коде. Они должны указывать на ссылки с защищенным протоколом.
  2. В файлы robots.txt и sitemap.xml необходимо добавить страницы с HTTPS.
  3. Проверить корректность указанных данных в Яндекс.Метрика и Google Search Console.
  4. Проверить отображение и доступность вашего сайта через поисковик.

Готово! На этом переход с HTTP на HTTPS завершен. Надеюсь, что у вас не возникло сложностей. Спасибо за внимание!

Комментарии

Kira 0
06 марта в 10:27
1. Сделала как написано в статье, заказала у вас в админке сертификат SSL Let's Encrypt. Статус "Заказан" висит уже несколько часов. Как долго идет получение сертификата? Неплохо бы указать это в статье.
2. При заказе мне была предложены услуги настройки редиректа с httpy на https, изменения урлов с целью избежать ошибки "mixed content" и устранения визуальных ошибок. Это всё однократные работы, но оплата за них предлагается помесячная, по 50 руб/мес. Это не совсем удачная формулировка или в самом деле за работу "сделал и забыл" предполагается взимать помесячную плату?
Свернуть ответы
Татьяна Л. +69
09 марта в 11:21
Сколько выпускается сертификат, зависит от его типа. Let's Encrypt обычно минут за 15. Может, какие-то проблемы были, есть ряд условий для успешного выпуска LE, вот здесь можно почитать, например: https://timeweb.com/ru/help/pages/viewpage.action?pageId=27918369
А услуга та предполагает постоянное обслуживание сертификата. Вам бы лучше у поддержки хостинга спросить: info@timeweb.ru
Модератор
Пришел кот и стер лапкой этот комментарий
С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте