14.11.2019
Как правильно перемещать WordPress из HTTP в HTTPS

Как правильно перенести WordPress с HTTP на HTTPS (Руководство для начинающих)

Всем привет! Вы хотите переместить свой WordPress сайт с HTTP на HTTPS и установить SSL — сертификат на свой сайт? Мне очень часто  задают вопросы по этой теме, потому что Google объявил, что браузер Chrome начнет маркировать все сайты без SSL как незащищенные с июля 2018 года. В этой статье я покажу вам, как правильно перенести WordPress с HTTP на HTTPS, добавив SSL-сертификат. Не беспокойтесь, если вы не знаете, что такое SSL или HTTPS. Далее тоже это объясню.

Что такое HTTPS?

HTTPS или Secure HTTP — это метод шифрования, обеспечивающий соединение между браузером пользователей и вашим сервером. Это мешает злоумышленникам и хакерам «подслушивать» соединение.

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

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

Предупреждение о небезопасном веб-сайте

Теперь вам, наверное, будет интересно, почему нужно специально переносить свой сайт WordPress с HTTP на HTTPS, если это простой блог или веб-сайт малого бизнеса, который не собирает никаких платежей.

Зачем вам HTTPS и SSL?

В прошлом году Google объявила о планах по улучшению общей безопасности в Интернете, поощряя владельцев веб-сайтов переключивших свои ресурсы с HTTP на HTTPS. В рамках этого плана их популярный браузер Chrome будет отмечать все сайты без сертификата SSL как «Небезопасные», начиная с июля 2018 года.

Chrome HTTP не защищен

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

Google медленно запускает предупреждение «Не безопасно» в Chrome. Например, если кто-то посещает веб-сайт HTTP с помощью окна инкогнито, он будет отмечен как «Незащищенный». Если кто-то посещает веб-сайт HTTP в обычном режиме и пытается заполнить контактную форму или другую форму, то сайт будет помечен как небезопасный.

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

Вот почему все веб-сайты должны мигрировать с HTTP на HTTPS и немедленно устанавливать SSL. Не говоря уже о том, что если вы хотите принимать платежи онлайн на своем веб-сайте электронной коммерции, вам нужен SSL.

Я, для сайтов своих клиентов, рекомендую использовать RapidSSL certificate, основываясь в основном на его цене — 19$ в год.

Требования к использованию HTTPS / SSL на сайте WordPress

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

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

Для получения дополнительной информации см. руководство о том, как получить бесплатный сертификат SSL для вашего сайта на сайте хостинг-провайдера reg.ru. После 6 лет работы с этим хостером у меня никаких нареканий не возникло. Работают, как часы.

Если ваша хостинговая компания не предлагает бесплатный SSL-сертификат, вам необходимо приобрести сертификат SSL. Или же перенести свой сайт к другому провайдеру, тому же рег.ру (ссылка выше).

Я рекомендую использовать рег.ру потому, что они являются одним из крупнейших регистраторов доменных имен в стране и одним из лучших хостинг-провайдеров.

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

Настройка WordPress для использования SSL и HTTP

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

Я покажу вам два способа, как сделать это и вы можете выбрать тот, который наилучшим образом соответствует вашим потребностям.

Способ 1. Настройка SSL / HTTPS в WordPress с помощью плагина

Этот метод проще и рекомендуется для новичков.

Для начала, вам нужно установить и активировать плагин Really Simple SSL

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

SSL включен на веб-сайте WordPress

Плагин позаботится обо всем, включая ошибки смешанного содержимого. Вот что делает плагин за кулисами:

  • Проверяет сертификат SSL
  • Настраивает WordPress для использования https в URL-адресах
  • Настраивает переадресацию с HTTP на HTTP
  • Ищит URL-адреса в вашем контенте, которые по-прежнему загружаются из ненадежных источников HTTP и пытается их исправить.

Примечание. Плагин пытается исправить ошибки смешанного содержимого, используя технологию буферизации вывода. Это может отрицательно сказаться на производительности ресурса, поскольку оно заменяет содержимое на сайте при загрузке страницы. Это влияние наблюдается только при первой загрузке страницы, и оно должно быть минимальным.

Хотя разработчики плагина говорят, что вы можете один раз произвести настройки SSL и потом безопасно деактивировать плагин, это не на 100% верно. Вам придется постоянно оставлять плагин активным, потому что деактивация плагина приведет к ошибкам смешанного содержимого.

Способ 2. Настройка SSL / HTTPS в WordPress вручную

Этот метод требует ручного устранения проблем и редактировании файлов WordPress. Однако это постоянное и более оптимизированное по производительности решение.

Если вам трудно использовать этот метод, вы можете попросить меня, я сделаю все настройки за небольшую плату, или использовать вместо него первый метод.

В рамках этого метода вам может потребоваться изменить файлы темы WordPress. Надеюсь копировать и вставлять фрагменты кода в WordPress вы умеете 😉 .

Во-первых, вам нужно зайти в Настройки => Общие. Там вам нужно обновить поля вашего адреса WordPress и URL-адреса сайта, заменив http на https.

Обновление URL-адресов в WordPress

Не забудьте нажать кнопку «Сохранить изменения», чтобы сохранить настройки. После сохранения настроек WordPress выйдет из системы, и вас попросят повторно войти в систему.

Затем вам нужно настроить перенаправления (редирект 301) WordPress с HTTP на HTTPS, добавив следующий код в ваш файл .htaccess .

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
</IfModule>

Не забудьте заменить example.com собственным доменным именем.

Если ваш ресурс размещается на серверах nginx, вам нужно будет добавить следующий код для перенаправления с HTTP на HTTPS в файл конфигурации:

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

Не забудьте заменить example.com собственным доменным именем.

Следуя этим шагам ваш WordPress сайт теперь загрузится с помощью https.

Если вы хотите принудительно использовать SSL и HTTPS в области администрирования и для входа в WordPress, вам необходимо настроить SSL в файле wp-config.php .

Просто добавьте следующий код над строкой «That’s all, stop editing!» в файле wp-config.php:

define('FORCE_SSL_ADMIN', true);

Эта строка позволяет WordPress принудительно использовать SSL / HTTP в области администрирования WordPress.

Как только вы это сделаете, ваш сайт станет полностью настроен на использование SSL / HTTPS, но вы все равно столкнетесь с ошибками смешанного содержимого.

Эти ошибки вызваны источниками (изображениями, сценариями или таблицами стилей), которые по-прежнему загружаются с использованием ненадежного протокола HTTP в URL-адресах. Если это так, то вы не сможете увидеть значок безопасного замка в адресной строке вашего веб-сайта.

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

Небезопасный контент заблокирован

Чтобы узнать, какой контент подается через небезопасный протокол, можно использовать инструмент «Посмотреть код». Ошибка смешанного содержимого будет отображаться в виде предупреждения в консоли с подробными сведениями для каждого элемента смешанного контента.

Ошибки смешанного содержимого отображаемые в консоли браузера

Вы заметите, что большинство URL-адресов — это изображения, фреймы и галереи изображений, а некоторые — скрипты и таблицы стилей, загруженные плагинами и темами WordPress.

Фиксирование смешанного контента в базе данных WordPress

Большинство неправильных URL-адресов будут представлять собой изображения, файлы, вложения и другие данные, хранящиеся в вашей базе данных WordPress. Сначала исправим их.

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

Вы можете легко сделать это, установив и активировав плагин Better Search Replace.

После активации вам нужно посетить страницу «Инструменты». В поле «Поиск» вам нужно добавить URL своего сайта http. После этого добавьте URL своего сайта с помощью https в поле «Заменить».

Поиск и замена

Там вы видите все ваши таблицы базы данных WordPress. Чтобы выполнить тщательную проверку, надо выбрать все.

Наконец, последнее, что нужно, это снять галочку рядом с надписью «Run as dry run?» и нажмите кнопку «Запустить поиск / заменить».

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

Исправление ошибок смешанного содержимого в WordPress Theme

Другим распространенным фактором, вызывающим ошибку смешанного контента, является ваша древняя тема WordPress. Почти любая современная тема WordPress, следующая за стандартами кодирования WordPress, не вызывает этой проблемы.

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

Использование средства проверки для поиска смешанного содержимого

После этого вам нужно будет найти их в вашей теме WordPress и заменить их https. Это будет немного трудно для большинства новичков, так как вы не сможете увидеть, какие файлы темы содержат эти URL-адреса.

Исправление ошибок смешанного содержимого, вызванных плагинами

Некоторые смешанные ресурсы контента будут загружаться плагинами WordPress. Любой плагин WordPress, следующий за стандартами кодирования WordPress, не приведет к ошибкам смешанного содержимого.

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

Примечание. Если по какой-то причине вы все еще сталкиваетесь с ошибкой смешанного содержимого, я рекомендую временно использовать плагин Really Simple SSL, пока вы исправляете проблему или нанимаете разработчика.

Отправьте свой сайт HTTPS в Google Search Console

Поисковые системы, такие как Google, рассматривают https и http как два разных веб-сайта. Это означает, что вам нужно будет сообщить Google, что ваш сайт переехал, чтобы избежать каких-либо проблем с SEO.

Для этого вам просто нужно зайти в свою учетную запись Google Search Console и нажать кнопку «Добавить ресурс».

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

После этого Google попросит вас подтвердить право собственности на ваш сайт. Существует несколько способов сделать это, выбирайте любой метод  и следуйте инструкциям, для проверки своего сайта.

Вы также должны убедиться, что как https, так и http-версии добавлены в Search Console.

После того, как вы добавили обе версии, вам нужно перейти на http-версию в Google Search Console и щелкнуть по меню настроек. Там вам нужно выбрать опцию «Изменить адрес сайта».

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

Этим вы говорите Google, что хотите, чтобы https-версия вашего веб-сайта считалась основной версией. В сочетании с 301 переадресацией, которую вы установили ранее, Google перенесет рейтинг вашего поиска на https-версию вашего веб-сайта, и вы, скорее всего, увидите улучшения в своем ранжировании по поиску.

 

11 комментариев к «Как правильно перенести WordPress с HTTP на HTTPS (Руководство для начинающих)»

  1. Сколько времени занял переход? какое проседание трафика было за нкдклю?

  2. В среднем 2 недели. Проседания трафика не наблюдал, ноне сильно и следил за этим

  3. А лучше просто ваять сайт без cms, а затем ставить flat-file cms-ку. Больше возможностей.

  4. О да, когда периводил свой сайт думал меня парализует, маялся не меньше недели.

  5. Жаль не видел этот статьи раньше. Только начал создавать сайт и чисто на дурака подключил сертификат и понеслось. Сайт открывался, но с зеленым фоном визуализации почти не было. Все собрано в кучу было. Далее стал разбираться сам. В конце концов решил вопрос, но потратил не один час.

  6. Свой сайт перенес, без особых проблема, главное в шаблоне вычистить протокол с http, чтобы сертификат работал.

  7. Поделитесь опытом, при переходе был упадок трафика?

  8. Да, мне видимо повезло, что не переезжал, а запуская свой блог сразу SSL устанавливал и особых проблем не возникло. Хотя перед запуском в интернет частично наполнял блог на компьютере через open.server, поэтому возникла проблема двойного доступа. Решил плагином HTTP / HTTPS Remover и в настройках админки дописал s к домену. Может кому пригодится.

  9. А что большая разница для гугла или яндекса HTTP / HTTPS
    чесно не замечал , если сайт нормально сделан (ключи контент беки и тд) то и так все работает

  10. Отличная инструкция, уже перенесли всех клиентов на новый протолок.

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

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