HTTPS это защищенный протокол для обмена данными между вашим сайтом и его посетителями.
Он позволяет шифровать весь трафик между вашим веб-сервером и браузером вашего клиента. Это предотвращает возможность злоумышленникам и интернет-провайдерам подменивать или просматривать такие данные, как пароли, номера кредитных карт, адреса электронной почты.
Для многих веб-сайтов протокол HTTPS уже давно стал стандартом (включая сайты WordPress.org и WordPress.com), а для интернет-магазинов, платежных систем, систем онлайн-банкинга и других ресурсов связанных с финансами и обработкой личных данных, HTTPS стал неотъемлемой и в некоторых случаях обязательной частью.
В августе 2014 года поисковый гигант Google объявил, что наличие поддержки протокола HTTPS уже является одним из факторов при ранжировании поисковой выдачи. Но стоит отметить, что подключив HTTPS ваш сайт не «взлетит» в поисковой выдаче, поскольку наличие HTTPS является не единственным и далеко не самым весомым фактором ранжирования, но при одинаковых прочих показателях, Google отдаст предпочтение защищенному сайту.
Следует также отметить, что HTTPS (поверх SSL/TLS) работает немного медленнее, чем обычный HTTP протокол, поскольку серверу и клиенту приходится тратить некоторое время на установление защищенного соединения и шифрование данных, но в большинстве случаев разница совсем не заметна.
После внесения изменений в конфигурацию веб-сервера, ваш сайт на WordPress должен автоматически стать доступным по протоколу HTTPS, но на этом работа не завершена. Все ссылки на сайте и в административной панели продолжат использовать протокол HTTP.
Изменить основной протокол сайта с HTTP на HTTPS можно в разделе Параметры → Общие в панели администрирования WordPress.
Эти же настройки можно задать в конфигурационном файле wp-config.php с помощью констант WP_HOME и WP_SITEURL. Это может быть полезно, если вы совершили ошибку при написании домена, и сайт вдруг стал недоступным.
Перед любыми манипуляциями с базой данных, советую сделать резервную копию.
После поиска с заменой, зайдите на ваш сайт и убедитесь в том, что все старые ссылки начинаются с //.
в общем разделе или в подключаемом файле .htaccess можно добавить следующее условие для редиректа на HTTPS:
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ //%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Как правило протокол https устанавливается на уже работающий сайт. И у вас скрипты, картинки, CSS и т.д. загружаются по http и это вызывет ошибки — mixed content
Смешанный контент возникает, когда исходный HTML загружается через безопасное соединение HTTPS, но другие ресурсы (например, изображения, видео, таблицы стилей, скрипты) загружаются по небезопасному HTTP-соединению. Это называется смешанным контентом, потому что загружаются как HTTP, так и HTTPS-контент, чтобы отображать одну и ту же страницу, и первоначальный запрос был защищен через HTTPS. Современные браузеры отображают предупреждения об этом типе контента, чтобы указать пользователю, что эта страница содержит небезопасные ресурсы.
Короче говоря, смешанный контент ухудшает безопасность и пользовательский интерфейс вашего сайта HTTPS.
Есть много способов устранить эти ошибки. Я использовал плагин для этих целей. называется он Remove HTTP: Fix Mixed Content Warning
Никакие изменения в ссылках не производятся в базе данных. Просто установите и активируйте плагин, и изменения будут незамедлительными. Ссылки, которые имеют //или //будут только иметь //, что делает их относительными URL-адресами протокола. Ниже приведен пример до и после.
ДО
<link rel='stylesheet' href='//мой_сайт/style.css' type='text/css' /> <script type='text/javascript' src='//мой_сайт/script.js'></script> <a href="//мой_сайт" title="Example">Example</a> <img src="//мой_сайт/image.jpg" width="150" height="50" />
После
<link rel='stylesheet' href='//мой_сайт/style.css' type='text/css' /> <script type='text/javascript' src='//мой_сайт/script.js'></script> <a href="//мой_сайт" title="Example">Example</a> <img src="//мой_сайт/image.jpg" width="150" height="50" />
Вот и всё. Удачи!