Как перевести сайт на WordPress с http на https

0
2243

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

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

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

Создаем сертификат

Я пользуюсь бесплатным Let’s Encrypt, который можно добавить как модуль в ISPmanager.

Для создания сертификата необходимо чтобы у пользователя, в котором находится сайт, было разрешение создавать SSL. Для этого в ISP Manager нужно зайти в Учетные записи — Пользователи, далее выделить пользователя, нажать «Изменить» и в появившемся окне поставить галку «Может использовать SSL» и нажать «Ок».

После чего идем в Настройки web-сервера — SSL-сертификаты и жмем кнопку «Let’s Encrypt», выбираем имя пользователя, после чего все данные автоматически проставятся и жмем ок. Все, сертификат получен!

Генерация SSL сертификата Let's Encrypt

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

Добавляем в wp-config код

Чтобы это сделать, необходимо зайти в корень вашего сайта, найти файл wp-config.php и любым текстовым редактором внести в него следующий код:

/** Вход в админку WordPress только через https */
define('FORCE_SSL_ADMIN', true);
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
$_SERVER['HTTPS']='on';

Меняем протокол в админке сайта

Далее в «общих» настройках в полях Адрес WordPress и Адрес сайта меняем http на https. После нажатия кнопки «Сохранить изменения» понадобится заново залогиниться, не пугайтесь.

Меняем во внутренних ссылках http на https

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

SQL запрос

Вот пример такого запроса с моим доменом (вам соответственно необходимо подставить свой):

UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://pznone.ru', 'https://pznone.ru');

Или же, как вариант, можно сразу сделать все ссылки относительными:

UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://pznone.ru/', '/');

Правим robots.txt

В robots.txt в директивах Host и Sitemap меняем http на https.

Настраиваем редирект с http на https

Чтобы страницы быстрее склеились необходимо настроить редирект с http на https.

В ISPmanager это можно сделать так www-домены — выбрать нужный и нажать «изменить» — галку на «Перенаправлять HTTP-запросы в HTTPS» — «ок».

Также это можно сделать и через .htaccess:

RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Переезд в Яндекс.Вебмастер

Заходим в Яндекс.Вебмастер — Индексирование — Переезд сайта, ставим галку на «Добавить HTTPS» и жмем «Сохранить».

Изменения в Google Search Console

Сначала необходимо удалить старый сайт с http через Настройки — Удалить ресурс, а после уже можно добавить новый с https.

Возможные ошибки

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

Чтобы это проверить, открываем код страницы, вводим в поисковую строку http://. Далее смотрим какие наши файлы подгружаются не по безопасному протоколу. Это могут быть ссылки в меню, логотипы, а также какие-нибудь картинки, добавленные вручную в сайдбар.

Заключение

Надеюсь, что эта статья была полезна и теперь вы знаете как перевести сайт на WordPress с http на https.

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь