Содержание
Доброго времени, дорогие читатели моего блога! С вами Дмитрий! Сегодня, как никогда, переход на https любого веб проекта является приоритетной задачей каждого его владельца.
Вместе с этим возникает наболевший вопрос — как установить ssl сертификат на сайт WordPress быстро, менее затратно, а самое главное корректно. И поэтому поводу, ниже, я подробно расписал как это сделать наиболее грамотно и быстро.
Что такое ssl сертификат и почему он важен
Думаю, если вы попали на эту статью, то для чего это нужно и почему это важно, рассказывать не стоит. Ведь наверняка вы уже об этом прочли несколько статей.
Да и какой-то конкретной и точной информации, что это как то дает плюс в поисковой выдаче или в продвижении, никто дать не может. Каждый решает сам, устанавливать его или нет и это, сугубо мое мнение!
Хочешь быть в «тренде», ставь!
Я веду не один проект на WordPress и больше половины моих проектов без ssl. Почему? Потому что на мой взгляд, это не панацея, а только лишь для того, чтобы «убрать» красный значок возле поисковой строки в браузерах.
Кто делает сайты на заказ, тот знает, как это бесит заказчика!
Более того, мы с моими коллегами до сих пор ставим некие эксперименты, какие проекты продвигаются быстрее с ssl сертификатами или без. Но разницы на данный момент нет, возможно что она и есть, но очень уж минимальна и тем самым незаметна.
Читайте также:
- Грамотный перенос сайта WordPress на другой домен
- Как отключить обновление WordPress, плагинов и тем. 100% методы
- Как закрыть сайт WordPress на обслуживание? Проще некуда
Что понадобится
- Купленный или бесплатный ssl
- Меняем урлы в базе данных
- Ставим редирект с http на https
- Оповещаем Yandex и Google
Купленный или бесплатный ssl
Какой выбрать решать вам, но если у вас небольшой проект или простой блог, то рекомендую ставить бесплатный — Let’s Encrypt. К примеру, на хостинге Timeweb он идет в комплекте и с автообновлением по срокам, причем на весь срок использования домена. Пользуюсь услугами этого хостинга более 5 лет.
Timeweb
timeweb.com/ru/about/news/1264/
Beget
beget.com/ru/news/2016/letsencrypt
Jino
jino.ru/about/news/articles/letsencrypt/
Если говорить о reg.ru и nic.ru, то там это платно, хотя и есть отметка что он бесплатный, но только первый год.
Reg
www.reg.ru/support/ssl-sertifikaty/zakaz-ssl-sertifikata/Kak-zakazat-besplatny-SSL-sertifikat-dlya-domena
Nic
www.nic.ru/info/freessl/
По моему опыту, эта пятерка хостеров лучшая по стоимости, работе ТП, характеристикам и аптайма серверов.
Меняем урлы в базе данных
После того как заказали и установили сертификат по инструкции в зависимости от того какой у вас хостинг, переходим в phpMyAdmin
и экспортируем базу данных.
Предварительно и в обязательном порядке сделать полный бэкап файлов и базы данных.
Открываем ее при помощи, к примеру блокнота — notepad++ и просто заменяем старые урлы на новые. То есть, http://site.ru
меняем на https://site.ru
Конечно, можно использовать для этого плагин — Better Search Replace или любой другой, который предназначен именно, для того чтобы менять в базе какие-то данные, но «дедовский» метод куда надежнее.
Более того, если стоит какой-то плагин «защиты», то скорее всего такие плагины по замене данных будут выдавать ошибку, что-то вроде «не хватает лимита хостинга».
После проделанного, делаем импорт (перед импортом удалить все существующие таблицы ) базы данных обратно на хостинг и переходим к редиректам.
Ставим редирект с http на https
Так как один и тот же проект на разных протоколах это 2 разных сайта, то для «склейки» этот редирект просто необходим и прописывать его нужно обязательно. К тому же, если проект старый и когда-то были закуплены ссылки с http, то они не пропадут даром, будет корректный редирект на «новый» урл.
Ниже привожу код, который в 98% случаев подойдет для большинства хостингов. Копируем и вставляем в .htaccess
после строки # BEGIN WordPress
если такая есть, если такой нет, то в самое начало файла.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} moysite.ru
RewriteRule (.*) https://moysite.ru/$1 [R=301,L]
</IfModule>
Редиректы для:
Timeweb
Настраивается переключателем на хостинге в разделе «сайты», «настройка сайта». Либо воспользоваться инструкцией ниже.
timeweb.com/ru/help/pages/viewpage.action?pageId=4358249
Beget
beget.com/ru/articles/use_ssl_trouble
Jino
jino.ru/help/faq/virtualhosting-general/ssl/
Reg
www.reg.ru/support/hosting-i-servery/kak-dobavit-redirekt/redirekt-s-http-na-https
Nic
www.nic.ru/help/fajl-htaccess-nastrojka-perenapravlenij-i-upravlenie-konfiguraciej-veb-servera_6793.html
Идем на этот сервис www.sslshopper.com/ssl-checker.html
, вставляем урл без протокола и если все сделано верно то увидим такую картину.
Далее нам нужно убедиться что нет «смешанного контента», для этого просто пробегаемся по страницам в режиме инкогнито. Достаточно просто открыть страницы такие как: главная, категория и запись. Если на них есть значок «замка», то на остальных и смежных страницах (поиск, 404 и т.д.) проблем быть не должно.
Оповещаем Yandex и Google
Yandex
Идем в Яндекс.Вебмастер, далее «Индексирование», «Переезд сайта» и ставим галочку на пункте «Добавить HTTPS».
Идем в Google Search Console (вебмастер Google) и добавляем новый ресурс в блоке «Ресурс с префиксом в URL» и не забываем указать протокол «https»
Для быстроты переиндексации нужно добавить карту — Sitemap в Google, а в Yandex просто ждем переобхода.
На сегодня у меня все! Успехов в нашем нелегком деле!