Миграция с HTTP на HTTPS — не просто смена протокола. Без правильной настройки получите смешанный контент, выпадение позиций и проблемы с сессиями. Полный чек-лист ниже.
1. SSL-сертификат через Let’s Encrypt
apt install certbot python3-certbot-nginx
certbot --nginx -d example.ru -d www.example.ru
2. Редирект HTTP → HTTPS в Nginx
server {
listen 80;
server_name example.ru www.example.ru;
return 301 https://example.ru$request_uri;
}
server {
listen 443 ssl http2;
server_name example.ru;
ssl_certificate /etc/letsencrypt/live/example.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.ru/privkey.pem;
}
3. Настройка адреса в Битрикс
В административной панели: Настройки → Настройки продукта → Настройки сайта — укажите HTTPS в поле «Адрес сайта».
4. Исправить смешанный контент в базе
UPDATE b_iblock_element_property
SET VALUE = REPLACE(VALUE, 'http://example.ru', 'https://example.ru')
WHERE VALUE LIKE '%http://example.ru%';
5. Безопасные куки в .settings.php
'cookies' => [
'value' => [
'secure' => true,
'http_only' => true,
'same_site' => 'lax',
],
],
6. HSTS заголовок
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
7. После миграции
- Перегенерируйте sitemap.xml
- Обновите адрес в Яндекс.Вебмастер и Google Search Console
- Проверьте сайт через whynopadlock.com на наличие смешанного контента
