Когда CDN не отдает картинки сайта, пользователи видят битые изображения, а сайт теряет скорость и визуальную целостность.

CDN должен ускорять сайт, а не становиться еще одной точкой отказа. Особенно это критично для каталогов, карточек товаров и страниц с большим количеством медиа.

Коротко: нужно проверить, видит ли CDN origin, какие статусы отдает, как настроены кеш и заголовки.

Почему это происходит

CDN перестает отдавать картинки из-за недоступного origin, неправильного DNS, битого SSL, 403/404 на файлах, неверного MIME-типа, запрета hotlink, кеша старых ошибок или путей, которые отличаются от реальной структуры сайта.

Что проверяю первым

  • открывается ли картинка напрямую с origin
  • какой статус возвращает CDN
  • валиден ли SSL для CDN и origin
  • какие cache-control заголовки отдаются
  • не закеширована ли старая 404 или 403 ошибка

Как проходит исправление

Я сравниваю один и тот же файл через origin и через CDN, затем проверяю DNS, заголовки, кеш и правила доступа.

  • исправляю origin URL и DNS
  • настраиваю SSL и доступ CDN к серверу
  • чиню заголовки MIME и cache-control
  • очищаю кеш CDN для проблемных путей
  • исправляю правила Nginx или hotlink protection

Что подготовить

  • пример битой картинки через CDN
  • прямой URL origin, если есть
  • название CDN-провайдера
  • доступ к DNS или панели CDN
  • логи сервера по запросу файла

Какой результат нужен

CDN должен отдавать картинки с правильным статусом, типом файла, кешированием и без устаревших ошибок.

Чего лучше не делать

Не очищайте весь CDN-кеш без необходимости на большом сайте. Лучше точечно purge проблемных путей, если причина уже понятна.

Вопросы и ответы

Почему через сайт картинки битые, а напрямую открываются?

HTML может ссылаться на CDN-путь, который отличается от реального origin-пути.

Может ли CDN закешировать ошибку?

Да, 404 или 403 могут попасть в кеш, если правила настроены неудачно.

Что такое origin?

Это исходный сервер, откуда CDN берет файлы для кеширования.

Нужно ли менять все ссылки на сайте?

Не всегда. Иногда достаточно исправить CDN origin или rewrite-правила.

Нужна похожая задача?

Напишите в Telegram @rabotator_support или оставьте заявку на сайте. Коротко опишите проблему, приложите ссылку, скриншот или лог ошибки, и я подскажу, с чего безопасно начать исправление.

Итог

CDN для картинок нужно проверять по связке origin - CDN - браузер. Статус, SSL, MIME, кеш и пути должны совпадать.