Давно перевожу все сайты на https. На днях опять встала задача переноса очередного сайта на Wordpress. Пишу по свежей памяти актуальную инструкцию по переезду.
Что такое https и зачем оно вам нужно писать не буду, в интернете полно информации на эту тему. Если коротко, то оно вам точно нужно :) Даже если ваш сайт взаимодействует с пользователем только своим меню и ссылками в статьях, то все равно остается как минимум 1 причина осуществить переезд – трафик из органической выдачи поисковых систем. Поисковые системы отдают предпочтение сайтам на https.
Что нам нужно иметь, чтобы осуществить задуманное:
- Доступ в панель управления доменом
- Доступ в админ панель нашего сайта на wordpress
- 15 минут свободного времени.
Поехали
Сначала сделайте резервную копию всего сайта и базы данных!
Сначала нам необходимо зарегистрироваться на сервисе Cloudflare.com. Далее добавляем свой сайт в форму «Set Up Websites» и жмем «Begin Scan». Сервис начнет сканирование dns-записей домена. Обычно все проход нормально и CloudFlare сам находит все записи, но в моем случае этого не произошло :) Скорее всего как-то криво хитро был настроен сервер хостера. Хоть через сервисы DNS Look up все было видно, CloudFlare не справился. Но не беда. Домен-то наш, и мы в курсе что там с ним должно происходить.
Как минимум у Вас должна быть запись вида:
A domain.ru 000.000.000.000
где А – тип записи, domain.ru – имя вашего домена без www, 000.000.000.000 – ip адрес вашего сервера (обычно можно пингануть первый Name server – ns1.reg.ru или ns1.nic.ru в зависимости от вашего хостинга – в windows пуск – выполнить – cmd /k ping ns1.nic.ru)
Эту запись можно добавить вручную.
Если у вас подключена почта Яндекса для домена, то не забудьте добавить MX запись. Для добавления алиаса “www” добавьте запись:
CNAME www domain.ru
где domain.ru – заменить на ваш домен.
После добавления сайта CloudFlare сообщит новые ns-сервера, которые необходимо будет указать для вашего домена в панели управления доменом.
Заходим в панель управления доменом – изменение DNS записей (DNS-сервера) и меняем старое значение на те, что сказал нам CloudFlare.
Возвращаемся в CloudFlare, переходим на наш сайт, вкладку «Crypro» и в первом пункте «SSL» выбираем «Flexible»
Далее идем в админку Wordpress – Плагины – Добавить новый. Устанавливаем и активируем 3 новых плагина:
- Cloudflare – управление некоторыми настройками облака из админки Wordpress
- CloudFlare Flexible SSL – фикс бага зацикливания перенаправления Wordpress
- Better Search Replace – поиск и замена текста в базе Wordpress
Плагин Cloudflare
Выбираем плагин в меню Настройки – CloudFlare. Необходимо ввести адрес почты, которую вы указали при регистрации в CloudFlare и API сервиса. API берем на сайте CloudFlare.com. Кликаем в верхнем правом углу на свое имя – My settings — Global API Key – View API Key. Копируем, вставляем в Wordpress. Плагин авторизуется, далее вам нужно нажать всего одну кнопку в первом пункте «Apply Default Settings» — «Apply»
Плагин Better Search Replace
Если на вашем сайте есть внешние ссылки или изображения, пропустите этот шаг!!!
Выбираем плагин в меню Wordpress Инструменты — Better Search Replace. В поле «Искать» вводим «http://» без кавычек, а в поле «Заменить на» — «https://» без кавычек. Выбираем все таблицы, ставим галку «Без учета регистра», снимаем галку «Холостой запуск? (без замены)», жмем «Запустить Поиск/Замену». Таким образом мы заменим все ссылки старого протокола на новый в меню, материалах, настройках плагинов, везде.
Финальный штрих.
Заходим в настройки Wordpress – Общие и меняем «Адрес WordPress (URL)» и «Адрес сайта (URL)» с … На … (без троеточия, значения остаются ваши, нужно в этих полях к http добавить букву «s»)
Готово. Как только обновятся dns-записи на серверах провайдеров (до 48-часов), ваш сайт будет работать через https!
Комментарии (11)
alexxxst
17.02.2017 21:15+2ip адрес вашего сервера (обычно можно пингануть первый Name server – ns1.reg.ru или ns1.nic.ru в зависимости от вашего хостинга – в windows пуск – выполнить – cmd /k ping ns1.nic.ru)
Что это за бред?
delfi
17.02.2017 21:35И вот мы выполнили шаг «В поле «Искать» вводим «http://» без кавычек, а в поле «Заменить на» — «https://» без кавычек.» и с ужасом вспомнили, что у нас есть ссылки на внешние сайты, изображения…
web2033
17.02.2017 22:53Хм, сильно мою прошлогоднюю статью напоминает)
https://echo.web2033.com/wordpress-http-https-cloudflare/Lda
17.02.2017 23:53Искал на Хабре, похожих не видел, по крайней мере в начале результатов поиска)
Напоминает Вашу, т.к. это стандартный туториал и все этот переезд выполняют именно так))))
EvilMushroom
17.02.2017 23:53А как же индексация и всё такое прочее? Ведь для поисковиков
http://domain.tld
иhttps://domain.tld
разные сайты ?!
nikitasius
18.02.2017 02:28Чтобы не ждать 2х дней обновления ДНС, надо выставить TTL 300 (5 минут), тогда переедете за несколько часов в худшем случае.
Сейчас Cloudflare умеет кешировать на время для public, указанное в max-age и игнорить кеш private с max-age=0 при правильных настройках. Фактическо можно закинуть любой сайт за cloudflare без плагигов, достаточно лишь отдавать админку как «private, max-age=0», а прочий контент с нужным вам TTL (1 секунда или 2 часа и т.п.).
ZoomLS
Трафик от CloudFlare до сайта пойдёт по http. Это не настоящий https, а суррогат какой-то.
Лучше взять Lets Encrypt и сделать нормальный https.
Lda
Да, суррогат, можно все айпи скрыть в облаке.
И да, лучше устанавливать Full SSL, но нужно иметь доступ к установке ssl-сертификата на сервер.