Настройка SSL-сертификата (HTTPS) в WordPress: пошаговое руководство
Введение: Почему HTTPS стал обязательным для WordPress
Современный интернет требует безопасности, и HTTPS — это не просто рекомендация, а необходимость. Понимание того, как настроить SSL-сертификат в WordPress, позволяет защитить данные пользователей, улучшить SEO и избежать блокировок браузерами. В этой статье мы разберём все этапы процесса — от выбора сертификата до тестирования на уязвимости.
С 2018 года Google начал выделять HTTPS-сайты в поисковой выдаче, а с 2021 года браузеры Chrome и Firefox начали показывать предупреждения о небезопасных ресурсах. Если ваш сайт на WordPress ещё работает по протоколу HTTP, пришло время переходить на HTTPS.
Шаг 1: Выбор SSL-сертификата и провайдера
Первое, с чего нужно начать — это выбор SSL-сертификата. Существует несколько типов сертификатов, и для WordPress подходят не все:
- Стандартный (DV): Проверяет доменное имя, подходит для большинства сайтов.
- Организационный (OV): Проверяет бизнес-информацию, подходит для корпоративных ресурсов.
- Расширенный (EV): Самый надёжный, с зелёной полоской в браузере, но дорогой и требует верификации компании.
Для большинства блогов, интернет-магазинов или корпоративных сайтов на WordPress достаточно DV-сертификата. Популярные провайдеры:
- Let’s Encrypt — бесплатный, но требует автоматической renew (срок действия 90 дней).
- Namecheap — платный, с длительным сроком (1-2 года), удобен для новичков.
- DigiCert — премиальный, подходит для крупных проектов.
Если ваш хостинг поддерживает Cloudflare, можно использовать их бесплатный SSL-туннель (Flexible или Full). Это удобно, но не всегда даёт полную защиту на сервере.
Шаг 2: Установка SSL-сертификата на хостинге
Процесс установки зависит от вашего хостинга. Рассмотрим два самых распространённых случая:
1. Установка через панель управления (cPanel, Plesk)
Если у вас стандартный хостинг с панелью управления, например cPanel, то:
- Перейдите в раздел SSL/TLS.
- Выберите опцию Установить SSL-сертификат.
- Введите данные сертификата (если он purchased) или используйте Let’s Encrypt через AutoSSL.
- Сохраните настройки и дождитесь подтверждения.
Если хостинг поддерживает Let’s Encrypt, процесс упрощается — достаточно нажать кнопку Установить в соответствующем разделе.
2. Установка через SSH (для VPS или dedicated серверов)
Если у вас VPS или вы работаете с bare-metal сервером, установка SSL-сертификата проходит через командную строку:
sudo certbot --apache -d yourdomain.com
После выполнения команды Certbot автоматически сгенерирует сертификат и настройка Apache/Nginx произойдёт автоматически. Если вы используете Nginx, можно использовать:
sudo certbot --nginx -d yourdomain.com
Учтите: для работы с Certbot может потребоваться установка пакета certbot-apache или certbot-nginx.
Шаг 3: Настройка WordPress для HTTPS
После установки SSL-сертификата на сервере нужно обновить настройки WordPress, чтобы он работал по HTTPS. Это важно, иначе могут возникнуть ошибки смешанного контента (mixed content warnings).
1. Обновление URL-адресов в базе данных
WordPress хранит URLs в базе данных, и если вы не обновите их, сайт будет пытаться загружать ресурсы по HTTP, что приведёт к ошибкам.
- Установите плагин Velvet Blues Update URLs или используйте SQL-запрос.
- В admin-панели WordPress перейдите в Настройки → Общие и измените:
- Адрес сайта (URL) на HTTPS-версию (например,
https://yourdomain.com). - Адрес WordPress (URL) аналогично.
- Адрес сайта (URL) на HTTPS-версию (например,
- Если вы предпочитаете SQL, выполните:
UPDATE wp_options SET option_value = replace(option_value, 'http://', 'https://') WHERE option_name = 'home' OR option_name = 'siteurl';Замените
wp_optionsна вашу префикс таблицы, если он отличается.
2. Настройка через плагин (рекомендуется)
Для автоматизации процесса можно использовать плагины:
- Really Simple SSL — самый популярный, автоматически переключает сайт на HTTPS.
- SSL Hide — скрывает предупреждения о смешанном контенте.
Установите и активируйте Really Simple SSL, после чего он автоматически detect, что сайт работает по HTTPS, и начнёт переадресацию.
3. Настройка .htaccess для 301-редиректа
Чтобы все запросы с HTTP автоматически перенаправлялись на HTTPS, добавьте следующий код в файл .htaccess (расположен в корне сайта):
# BEGIN Really Simple SSL
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^yourdomain\.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.yourdomain\.com [NC]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# END Really Simple SSL
Замените yourdomain.com на свой домен. Этот код также можно сгенерировать через плагин Really Simple SSL.
Шаг 4: Проверка и устранение ошибок
После настройки HTTPS важно проверить, что всё работает корректно. Основные проблемы:
- Ошибки смешанного контента (Mixed Content): Браузер блокирует загрузку ресурсов по HTTP, если сайт работает по HTTPS.
- Неправильные URL-адреса в CSS/JS: Если в коде сайта остались ссылки на HTTP, браузер может показать предупреждение.
- Ошибка SSL-сертификата: Неправильная конфигурация сервера или истёкший сертификат.
1. Проверка смешанного контента
Используйте инструменты:
- SSL Labs Test — проверяет качество SSL-коннекта.
- Google Mobile-Friendly Test — показывает, если есть смешанный контент.
Если обнаружены ошибки, используйте плагин SSL Mixed Content Fixer или вручную обновите URL-адреса в коде.
2. Проверка сертификата
Убедитесь, что:
- Сертификат не истёк (для Let’s Encrypt — 90 дней).
- Доменное имя совпадает с тем, что указано в сертификате.
- Используется протокол TLS 1.2 или выше (проверьте в настройках хостинга).
Для автоматического обновления Let’s Encrypt можно настроить cron-задачу через certbot renew --quiet.
Шаг 5: Оптимизация для SEO и производительности
После перехода на HTTPS важно оптимизировать сайт, чтобы избежать потери трафика. Основные действия:
- Обновите sitemap.xml: Используйте плагин Yoast SEO, чтобы сгенерировать новую карту сайта.
- Настройте 301-редирект для старых URL: Если у вас были изменения в структуре, перенаправьте старые ссылки на новые через
.htaccess:RewriteRule ^old-page/$ https://yourdomain.com/new-page/ [R=301,L] - Ускорите загрузку HTTPS-страниц: Используйте кэширование (плагин WP Rocket) и CDN, например Cloudflare.
Также проверьте, что Google Search Console распознаёт HTTPS-версию вашего сайта. В настройках Search Console добавьте свойство для https://yourdomain.com.
Заключение: Итоги и рекомендации
Переход на HTTPS — это не разовая задача, а процесс, который требует внимательности. Вот ключевые шаги, которые нужно запомнить:
- Выберите подходящий SSL-сертификат: Для большинства WordPress-сайтов достаточно DV-сертификата от Let’s Encrypt.
- Установите сертификат на хостинге: Используйте панель управления или Certbot для VPS.
- Обновите настройки WordPress: Измените URL-адреса в базе данных и используйте плагины для автоматизации.
- Проверьте на ошибки: Используйте SSL Labs, Google Tools и плагины для устранения смешанного контента.
- Оптимизируйте SEO: Обновите sitemap, настройте редиректы и ускорите загрузку.
Рекомендации для дальнейшего поддержания HTTPS:
- Настраивайте автоматическое обновление сертификата (для Let’s Encrypt — через cron).
- Регулярно проверяйте сайт на уязвимости с помощью Sucuri SiteCheck.
- Используйте HSTS (HTTP Strict Transport Security) для дополнительной защиты. Добавьте в
.htaccess:Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" - Обновляйте плагины и WordPress, чтобы избежать уязвимостей, которые могут быть использованы для атаки на SSL.
Переход на HTTPS — это инвестиция в безопасность и доверие пользователей. Если вы следовали этой инструкции, ваш сайт теперь защищён, а его SEO-позиции только улучшились. Не забывайте monitor за изменениями в браузерах и алгоритмах Google, чтобы оставаться в курсе лучших практик.