Неполная цепочка сертификатов — ошибки на Android и в curl

  • Обновлено
  • Чтение ≈ 2 минуты

Краткий ответ

Сервер должен отдавать сертификат вместе с промежуточными. Используйте fullchain.pem и проверьте цепочку.

В этой статье
  1. Что означает ошибка
  2. Причины и признаки
  3. Пошаговое решение
  4. Проверка результата

#Что означает ошибка

Сообщение
Неполная цепочка

Сервер должен отдавать сертификат вместе с промежуточными. Используйте fullchain.pem и проверьте цепочку.

#Причины и признаки

Возможная причинаКак узнатьЧто делать
Только leafСравните обстоятельства появления ошибки с указанным признаком и не меняйте настройки без подтверждения.fullchain.
Старый файлСверьте точное имя и расположение файла; попробуйте действие на копии без изменения исходника.Обновите. После действия повторите исходную операцию.
Ошибка путиСверьте точное имя и расположение файла; попробуйте действие на копии без изменения исходника.Исправьте.
Кэш CDNПовторите действие после штатного закрытия приложения; очистка кэша нужна лишь после сохранения пользовательских данных.Сбросьте. Перед этим сохраните настройки и локальные данные, которые могут быть потеряны.

#Пошаговое решение

  1. Используйте fullchain.pemВладельцу HTTPS-сервера: выясните, какой файл сертификата подключён в веб-сервере. Для Let’s Encrypt в Nginx обычно требуется ssl_certificate /etc/letsencrypt/live/ВАШ_ДОМЕН/fullchain.pem;, где ВАШ_ДОМЕН заменяется действительным доменом, а ключ указывается отдельной директивой. Сначала проверьте существование файлов и сохраните конфигурацию; не копируйте примеры вслепую и не публикуйте закрытый ключ.
  2. Проверьте цепочкуОткройте терминал и выполните openssl s_client -connect example.com:443 -servername example.com -showcerts </dev/null, заменив домен на свой. Проверьте выданные промежуточные сертификаты и сообщения проверки цепочки. Если сервер отправляет только конечный сертификат без нужного промежуточного, настройте полную цепочку от издателя. Кеш браузера не исправляет отсутствие сертификатов на origin.
  3. Перезагрузите серверПосле изменения конфигурации выполните sudo nginx -t и только при успехе sudo systemctl reload nginx (если ваш сервер действительно использует systemd и Nginx). Для Apache применяйте штатную проверку apachectl configtest и его механизм перезагрузки. Перезапуск с потерей соединений не нужен: сначала используйте мягкое применение настроек, затем повторите openssl s_client.
  4. Проверьте отдельные сертификаты CDN и исходного сервераЕсли сайт проксируется через CDN, уточните, где происходит TLS: посетитель видит сертификат CDN, а CDN отдельно соединяется с origin. Проверьте оба соединения и убедитесь, что сервер исправлен, даже если часть клиентов перестала сообщать ошибку. На Android и curl ошибка исчезнет после корректной полной цепочки, без отключения проверки сертификата.

#Проверка результата

Откройте тот же адрес, где возникало «Неполная цепочка сертификатов — ошибки на Android и в curl», в исходном браузере. Сравните с другим подключением и проверьте точный код ответа. Не используйте незащищённые обходы HTTPS как доказательство исправления.

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.