Перенос WordPress сайта с http на https. Полное руководство

Доверие — залог долгосрочных и прочных отношений с заказчиком

Must have тренд 2017 года — использование SSL или переход сайтов с http на безопасный https протокол. Так, новые версии браузеров Chrome 56.0.2924.87 и Firefox 51.0.1 предупреждают пользователей сайтов об использовании небезопасного протокола http. Chrome использует фразу «Не защищено», а Firefox — использует серый замок, перечеркнутый красной линией, демонстрируя потенциальную опасность. По этой причине мы рассмотрим перенос WordPress сайта с http на https.

http протокол

http протокол, соединение не защищено

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

Вопрос того, покинет пользователь сайт или нет, является риторическим, но передавать свои персональные данные вряд ли станет, тем более если речь идет о номерах банковских карт.

Другое дело, конечно, обстоит, когда у Вас есть ssl сертификат и Вы используете https протокол, браузер дает пользователю так называемый «зеленый свет».

И более подробно:

Ни для кого не секрет, что долгосрочные и надежные отношения с клиентом строятся в первую очередь на доверии, тем более, если клиент нашел Вас в интернете. Поэтому без доверия на сайте никуда, в этом случае именно использование https приносит в копилку сайта еще один балл доверия. Ввиду столь широкой популярности CMS WordPress и побудил желание описать перенос WordPress сайта с http на https.

Но использование https протокола является не только вопросом доверия, но дает владельцу сайта еще ряд серьезных преимуществ:

  1. Время загрузки сайта снижается на 30-60%.
  2. Наличие https благоприятно влияет на SEO.
  3. Информация передается исключительно в зашифрованном виде, что ограничивает доступ к логину, паролю при входе в админ-панель WordPress сайта, номеру банковской карты.

Вывод: использование https в 2017 году — необходимость, а не просто очередная заморочка программиста.

1. Приобретение SSL сертификата или использование SSL сертификата, предоставленного хостинг-провайдером

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

Существует 3 основных типа SSL-сертификатов:

  1. Валидация домена. Дешевый, быстрый и простой способ получить сертификат (в течении 10 минут), используя электронный адрес, требуется наличие домена или субдомена. Используется львиной долей всех сайтов с протоколом https.
  2. Валидация организации. Этот тип сертификатов можно получить в течение 1-3 дней и обеспечивает более высокий уровень защиты данных. Требуется документальное подтверждение.
  3. Расширенная валидация. Такой сертификат можно получить в течение 3-7 дней, требуется наличие домена или субдомена. Особенностью такого сертификата является наличие зеленой адресной строки.

Валидация домена

https валидация

Расширенная валидация

https расширенная валидация

Руководство по установке полученного сертификата, как правило, размещается на сайте, который предоставляет возможность получения сертификата. Шаги установки отличаются в зависимости от типа используемого сервера Apache, Nginx и т.д.

Что касается использования сертификата хостинг провайдера, то Вам всего лишь нужно перейти в «Панель управления», найти раздел «Настройки» и перейти на страницу «Настройка SSL». И получить данные сертификата. Для различных хостинг-провайдеров эти шаги могут отличаться. Если у Вас возникают трудности, рекомендуем связаться с провайдером.

Настройка SSL

SSL сертификат

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

http на https

В результате неверно выбранного пункта у Вас может возникнут ошибка, как показано на рисунке ниже (ERR_TOO_MANY_REDIRECTS)

Слишком много редиректов

2. Изменение ссылок

Следующим шагом является изменение абсолютных ссылок с http на https. Абсолютные ссылки это ссылки вида:

http://level-80.com/portfolio

Каждую такую ссылку необходимо изменить на https. Но решение такой задачи может стать большой проблемой. И эта проблема будет тем больше, чем больше страниц на Вашем WordPress сайте. Поэтому мы рекомендуем воспользоваться php скриптом для замены ссылок в базе данных.

2.1 Скачайте скрипт со страницы по ссылке выше.

2.2 Обязательно сделайте бэкап базы данных Вашего WordPress сайта (войдите в phpMyAdmin, выберите базу данных, перейдите на вкладку Экспорт и сохраните базу данных).

2.3 Распакуйте архив со скриптом.

2.4 Переименуйте папку скрипта и скопируйте папку на сервер в корень Wodpress сайта. Обязательно переименуйте папку во избежание доступа посторонних лиц в Вашей базе данных.замена ссылок в базе данных

2.5. Введите в адресной строке адрес папки скрипта

замена адреса с http на https

2.6. Введите текущий адрес сайта и адрес сайта с https протоколом.

Перенос WordPress сайта с http на https

2.7. Нажмите на кнопку «dry run». При нажатии этой кнопки замены ссылок в базе данных не произойдет, скрипт просто покажет Вам какие изменения будут осуществлены. Вы можете просмотреть в каких таблицах будет произведена замена адресов.

2.8. Если Вас ничего не смущает, нажмите клавишу «live run».

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

3. Редирект 301 на новый адрес HTTPS

Для настройки редиректа понадобиться выполнить несколько простых шагов. Сначала откройте файл wp-config.php в корне сайта WordPress и вставьте следующий код:

define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
if (isset($_SERVER['HTTP_X_HTTPS'])&&$_SERVER['HTTP_X_HTTPS']==1)
$_SERVER['HTTPS']='on';

Откройте файл .htaccess, если Ваш сервер Apache и введите:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Если Ваш сервер Nginx:

server {
listen 80;
server_name domain.com www.domain.com;
return 301 https://domain.com$request_uri;
}

4. Обновите файл robots.txt

Все ссылки в файле robots.txt необходимо обновить с учетом https протокола.

5. Обновите файл sitemap.xml

Откройте файл sitemap.xml и замените адреса всех страниц с http на https, это практически последний шаг руководства и перенос WordPress сайта с http на https на финишной прямой.

6. Перейдите в Google Search Console и закончите перенос WordPress сайта с http на https

6.1. Добавьте сайт с адресом https://example.com, независимо от того, что у Вас есть http://example.com.

6.2 Добавьте файл robots.txt в инструмент проверки файла robots.txt

6.3 Добавьте файл Sitemap.

6.4 Перейдите на страницу «просмотреть как Googlebot». Нажмите клавишу «Сканировать», а затем «Запросить индексирование», в появившемся окне выберите «Сканировать этот URL и прямые ссылки» и нажмите клавишу «Отправить».

Google Search Console

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

Спасибо всем, кто дочитал до этого места данный лонгрид, с уважением, команда level-80 🙂

Поделиться:

Оцените запись:
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (6 оценок, среднее: 4,33 из 5)
Загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*Комментарий - обязательное поле для ввода
* Имя - обязательное поле для ввода
* Email - обязательное поле для ввода