Ошибки HTTPS в браузере (ERR_CERT_DATE_INVALID, Mixed Content, NET::ERR_CERT_AUTHORITY_INVALID) связаны с SSL-сертификатом или настройкой веб-сервера. Ниже приведены решения для каждой ошибки.
Применимо к:
✔ VPS
✔ Выделенные серверы
✔ Nginx, Apache
Сертификат просрочен или ещё не вступил в силу.
Проверьте даты сертификата:
openssl x509 -in /path/to/cert.pem -noout -dates
Или проверьте сертификат на сервере:
echo | openssl s_client -connect ваш-домен.com:443 2>/dev/null | openssl x509 -noout -dates
Если сертификат просрочен, обновите его. Для Let's Encrypt:
certbot renew
systemctl reload nginx
Браузер не доверяет издателю сертификата. Частые причины:
Проверьте цепочку:
openssl s_client -connect ваш-домен.com:443 -showcerts
В выводе должны быть минимум 2 сертификата (ваш + промежуточный). Если только один, добавьте CA Bundle в конфигурацию.
Nginx:
ssl_certificate /etc/letsencrypt/live/домен/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/домен/privkey.pem;
Используйте fullchain.pem, а не cert.pem.
Страница загружается по HTTPS, но содержит ресурсы (картинки, скрипты, стили) по HTTP.
Браузер блокирует небезопасные ресурсы или показывает предупреждение.
Решение: замените все HTTP-ссылки в коде сайта на HTTPS или используйте протоколо-независимые URL:
Было: http://example.com/image.jpg
Стало: https://example.com/image.jpg
Или: //example.com/image.jpg
Для WordPress добавьте в wp-config.php:
define('WP_HOME', 'https://example.com');
define('WP_SITEURL', 'https://example.com');
Nginx:
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}
Apache (.htaccess):
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Проблема с протоколом SSL/TLS. Проверьте конфигурацию:
nginx -t
Убедитесь, что пути к сертификату и ключу корректны и файлы существуют:
ls -la /etc/letsencrypt/live/ваш-домен/
curl -I https://ваш-домен.com
Ожидаемый ответ: HTTP/2 200 или HTTP/1.1 200.
Проверьте сертификат:
echo | openssl s_client -connect ваш-домен.com:443 2>/dev/null | openssl x509 -noout -subject -dates
Если ошибка сохраняется после обновления сертификата и проверки конфигурации, откройте тикет в техническую поддержку. Приложите вывод nginx -t и информацию о сертификате.