Web Factory > WordPress > Как перейти на HTTPS в WordPress

Как перейти на HTTPS в WordPress

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

Поисковые системы рекомендуют даже на обычные сайты, не коммерческие, ставить SSL сертификат. Это дает больший уровень доверия к сайту, такой себе бонус СЕО от поисковиков.

Что дает переход на HTTPS

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

Безопасность отображаемого содержимого. Бывали случаи, когда через Wi-Fi публичных мест перехватывал трафик HTTP и добавлял свою рекламу в него. По протоколу HTTPS такого сделать не получится.

SEO. Поисковая система Google сообщает, что сайты, использующие протокол HTTPS будут выше ранжироваться. И это понятно почему, интернет должен быть чище, а с HTTPS это возможно, что позволит поисковику отсеять некачественные ресурсы.

Как получить сертификат SSL

Это важнейший шаг — ведь без сертификата протокол не станет доступным. Приобрести сертификат SSL по не высокой цене можно у компании https://www.ukrnames.com . Здесь есть огромное количество тарифных планов. Даже самый простой сертификат, купленный здесь, даст вашему сайту защиту по протоколу HTTPS и в адресной строке браузера будет отображаться замочек.

Green ssl

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

После его установки ваш сайт будет доступен по адресу https://yoursite.com. Но скорее всего вы увидите пустую страницу или ошибки. Дальше нужно поменять везде http на https.

Правки сайта для перехода на HTTPS

В файле конфигурации wp-config.php нужно добавить константу

define('FORCE_SSL_ADMIN', true);

она переводит админку сайта на использование HTTPS. После сохранения протестируйте, зайдете ли вы в админку сайта по https://yoursite.com/wp-admin. Проблем возникнуть не должно.

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

UPDATE wp_options SET option_value = REPLACE(option_value, 'http://test.com', 'https://test.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://test.com', 'https://test.com');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://test.com','https://test.com');

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

Избавляемся от уведомлений о смешанном содержимом или желтый треугольник после установки SSL сертификата

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

замочек ssl серификата

Чтобы убрать ошибку желтого треугольника нужно поправить адреса на https у всего содержимого.

Можно использовать url адреса относительно протокола, они выглядят так:

<img src="//site.com/image.jpg" alt="image">

либо адреса относительно домена, не требующие знать, какой протокол используется на странице:

<img src="/img/image.jpg" alt="image">

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

Бывает такое, что на сайте писались сотни постов, в которые вбивались прямые ссылки на изображения http. Такое исправить вручную очень сложно, поэтому нужно использовать SQL запрос в базе.

Сделайте бекап сайта и базы. Сделайте копию сайта, протестируйте запрос на тестовом сайте, а потом уже делайте то же самое на рабочем сайте.

Отлавливаем изображения с двойными кавычками:

UPDATE wp_posts 
SET    post_content = ( Replace (post_content, 'src="http://', 'src="//') )
WHERE  Instr(post_content, 'jpeg') > 0 
        OR Instr(post_content, 'jpg') > 0 
        OR Instr(post_content, 'gif') > 0 
        OR Instr(post_content, 'png') > 0

А теперь правим картинки с одинарными кавычками:

UPDATE wp_posts 
SET   post_content = ( Replace (post_content, "src='http://", "src='//") )
WHERE  Instr(post_content, 'jpeg') > 0 
        OR Instr(post_content, 'jpg') > 0 
        OR Instr(post_content, 'gif') > 0 
        OR Instr(post_content, 'png') > 0;

Правка строк с картинками в произвольных полях

UPDATE wp_postmeta 
SET meta_value=(REPLACE (meta_value, 'iframe src="http://','iframe src="//'));

Переадресация с HTTP всех страниц сайта на соответствующие HTTPS странцы

Заходим в файл .htaccess и добавляем код переадресации:

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

Также проверьте протокол в Настройках -> Чтение (Адрес WordPress (URL) и Адрес сайта (URL)). Мы это меняли SQL запросом выше, но проверить не помешает.

Проверка https адреса блога


Опубликовано:

2
Оставить комментарий

avatar
  Подписаться  
новейшие старейшие наиболее популярные
Уведомление о
Илья
Гость
Илья

Добрый день! Спасибо вам за инструкцию. Подскажите пожалуйста, как быть с вебмастером Google и Яндекс и их аналитикой и метрикой? Значек на страницах зеленый, изменил внутренние ссылки, сделал редирект с http на https, в robots.txt в строке host и строке sitemap.xml изменил url сайта на https. В вебмастере Яндекс в разделе Переезд отправил запрос на https для сайта. В Google analytics в настройках сайта выбрал Url по умолчанию версию с https. Добавил еще одну версию сайта в Google webmaster уже с версией url с https (также отправил sitemap с https в url). Теперь в Google webmaster две версии одного сайта… Читать далее »