Различия между http и https
Сегодня многие владельцы сайтов стараются сменить протокол с http на https, так как это должно повысить защищенность сайта. Тем более если в личном кабинете хранятся персональные данные пользователей, в том числе логины и коды доступа.
Https зашифровывает весь поток информации, которой сайт обменивается с браузером. Благодаря этому третьим лицам не удастся перехватить банковские реквизиты, данные для доступа, электронные почтовые адреса и номера телефонов. Стоить SSL сертификат начинается от 15$. С ростом уровня подтверждения данных в SSL сертификате, стоимость сертификата растет.
Где можно изменить адрес сайта для HTTPS ?
В админке сайта заходим в «Настройки» => «Общие»
Далее, в специальные поля вводим новый адрес с учетом изменившегося протокола.
После это следует проверить адреса статей и другие ссылки. Они должны были измениться. Если у вас все получилось сделать, сайт открывается по https:// и при попытке открыть его по http:// он всеравно открывается по https:// значит все хорошо, вы сделали все правильно и добились цели.
Что-то пошло не так и на сайт нельзя зайти
В данном случае следует вернуть все обратно и поискать причину сбоя в установленных плагинах или в одном из файлов темы – functions.php. Отправляемся в wp-config.php и вставляем значения:
define('WP_HOME','http://clearfy.pro'); define('WP_SITEURL','http://clearfy.pro');
clearfy.pro в данном случае пример. Вместо этого URL должен быть адрес вашего сайта с протоколом http.
Займемся поиском причины сбоя. Деактивируйте плагины один за одним, удалите данные, веденные ранее в wp-config.php. Если сайт не починился, то поменяйте тему на одну из стандартных. Проверьте снова. Если ситуация не прояснилась, то проверьте файл .htaccess. Возможно источник проблем в нем.
Редирект с http на https WordPress
Редерикт должен работать по умолчанию, если вы все верно настроили в админке, если этого не произошло то можно воспользоваться советом ниже.
Не торопитесь с настраивать редирект редирект с http на https wordpress. Если к примеру для Гугла это можно сделать сразу, то с Яндексом следует повременить, дождавшись объединения доменов.
Откройте .htaccess и в начале файла вставьте следующие данные:
RewriteEngine On RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)\ HTTP/ [NC] RewriteCond %{HTTPS} off [NC] RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI}%{QUERY_STRING} [R=301,QSA,L]
Если это не помогло, то попробуйте Вариант №1. Тут мы настраиваем 301 редирект в серверной части:
RewriteEngine On RewriteCond %{HTTPS} =off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Вариант №2, используя php:
add_action('init', 'redirect_http_to_https'); function redirect_http_to_https(){ if( is_ssl() ) return; if ( 0 === strpos($_SERVER['REQUEST_URI'], 'http') ) wp_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ), 301 ); else wp_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 301 ); exit; }
Этот код лучше ввести в файле functions.php темы сайта. Иначе, поменяв тему у вас слетят настройки всех редиректов. Для решения проблемы годятся все способы из перечисленных. Однако Вариант №1 считается более удачным, так как лучше, чтобы сервер обрабатывал запросы, а не PHP.
Последствия перехода на SSL для SEO
Обязательно измените URL сайта в файле robots.txt и укажите, что следует теперь считать новым основным зеркалом в панели вебмастера поисковиков. Ведь, как правило, позиции сайта и трафик после перехода с одного протокола на другой понижаются. Но это временные последствия. Таким образом, чем раньше произойдет переход, тем меньше потерь для SEO. Но нельзя не отметить, что Google способствует продвижению сайтов с сертификатом HTTPS.
Правила перехода без потери позиций
- Проверяем, корректно ли работают страницы после получения SSL сертификата.
- В панель разработчика «Яндекс.Вебмастер» вносим сайт с новым URL
- Настраиваем 301 редирект с http на https wordpress
- По аналоги с Яндексом, вносим сайт с протоколом https в Google Search Console.