Устранение неполадок

Диагностика реальных проблем: ничего не запускается, всё падает с ошибками, или прогрев работает, но быстрее не становится.

12 min read

Проблемы делятся на три группы, и определение того, какая из них у вас есть, немедленно сужает причину.

вообще ничего не запускается

Данные сканирования не отображаются. Обычно проверка или активный переключатель.

Запускается, но ошибки

URL-адреса возвращают 403, 429, 5xx или перенаправления. Обычно блокируются или неправильные URL-адреса.

Работает чисто, но ничего не улучшается

Коды состояния в порядке, время загрузки - нет. Почти всегда проблема с кешированием, а не с потеплением.

вообще ничего не запускается

  1. 1

    warmer Активен?

    Самая распространенная причина с большим отрывом. Неактивный warmer сохраняет свои настройки и никогда не запускается.

  2. 2

    hostname Проверено?

    Проверьте Аккаунт → Hostnames. Ожидание проверки блокирует каждый запуск. См. Hostname проверка.

  3. 3

    Точно ли URL-адрес записи hostname соответствует проверенному?

    example.com и www.example.com разные. warmer, указанный на непроверенную форму, не будет работать.

  4. 4

    Вы достигли лимита плана?

    Проверьте Аккаунт → Подписка. Исчерпание дневного или ежемесячного бюджета URL-адресов прекращает нагреваться до тех пор, пока период не будет сброшен.

  5. 5

    Окно расписания блокирует это?

    Если установлено теплое расписание, запланированные старты за пределами окна пропускаются. Попробуйте запустить warmer вручную — если это сработает, то причиной является окно.

  6. 6

    Вы находитесь в правильном рабочем месте?

    Warmers принадлежат рабочей области. Проверьте селектор на боковой панели — warmer может находиться там, где вы сейчас не ищете.

Он работает, но ошибка URL-адресов

403 Запрещено

Что-то намеренно блокирует сканер — WAF, фильтр ботов, управление ботами Cloudflare или плагин безопасности.

  • Создайте список разрешенных запросов Cache Rocket на вашем брандмауэре или CDN.
  • Установите особый пользовательский агент и добавьте его в список разрешенных.
  • Снижение максимального количества URL-адресов в минуту — многие фильтры ботов срабатывают по частоте запросов, а не по идентификации.
  • Проверьте наличие блока страны, если регион вашего warmer отличается от того, откуда вы обычно просматриваете сайты.

429 Слишком много запросов

Вы нагреваетесь быстрее, чем позволяет ваш сервер или CDN. Существенно снизьте максимальное количество URL-адресов в минуту — уменьшите его вдвое, убедитесь, что ошибки прекратились, а затем постепенно увеличивайте. Если ваш хостинг устанавливает документально подтвержденное ограничение скорости, оставайтесь в его рамках.

5xx ошибки сервера

У тебя ориджин глючит под нагрузкой. Немедленно понизьте лимит ставки.

Считайте 5xx срочным

Если потепление может привести к ошибкам сервера в вашем источнике, то же самое может сделать и небольшой всплеск трафика. warmer обнаружил реальную проблему с емкостью. Уменьшите скорость сейчас, а затем посмотрите, почему источник настолько хрупкий.

301/302 редиректы

Ваши URL-адреса входа или внутренние ссылки указывают на перенаправление. Каждое перенаправление приводит к потере запроса и переводит неправильный адрес.

  • Используйте конечный пункт назначения в качестве входного URL-адреса, включая или исключая www, поскольку ваш сайт фактически его обслуживает.
  • Всегда используйте https://, никогда http://.
  • Включите Перезаписать на HTTPS, если внутренние ссылки по-прежнему используют http.
  • Соответствуйте соглашению о косой черте на вашем сайте.

404 Не найден

Неработающие внутренние ссылки, устаревшая карта сайта со списком удаленных страниц или обнаруженные URL-адреса, которые никогда не были реальными. Исправьте ссылки, заново создайте карту сайта или исключите некорректный шаблон.

Неверное количество URL-адресов

Гораздо меньше, чем ожидалось

  • Глубина слишком мала. Страницы дальше заданной глубины никогда не достигаются.
  • Файлы Sitemap отключены. Их включение обычно является самым большим выигрышем в охвате.
  • Исключения слишком обширны. Правило, предназначенное для /search, может охватывать больше, чем вы имели в виду.
  • Ваша навигация осуществляется только с помощью JavaScript. Ссылки, которых нет в HTML, невозможно обнаружить с помощью HTTP-запроса. Рассмотрите возможность потепления браузера или добавьте карты сайта.

Гораздо больше, чем ожидалось

  • Фасетные URL-адреса. Комбинации фильтров и сортировок можно использовать без ограничений. Исключите их, используя регулярное выражение, если оно доступно.
  • Параметры сеанса или отслеживания. URL-адреса, отличающиеся только параметром запроса, учитываются отдельно.
  • Глубокая нумерация страниц. Архивные страницы глубиной в двадцать страниц редко заслуживают прогрева.
  • Глубина слишком велика. Вернитесь на один уровень назад.

Tip

Неожиданно большое количество URL-адресов — наиболее распространенный способ сжечь ежемесячный бюджет на страницах, которые никто не посещает. Если количество вас удивит, посмотрите на фактический список URL-адресов, прежде чем повышать план.

Он работает чисто, но ничто не становится быстрее

Коды состояния — 200, URL-адреса закрыты, и время загрузки обоих по-прежнему медленное. Потепление работает, а кеширование — нет. Cache Rocket может пополнять только существующий кеш.

  1. 1

    Подтвердите, что страница кешируется

    Посмотрите на заголовки ответов. Cache-Control: no-store или private означает, что он никогда не будет кешироваться, независимо от того, как часто вы его прогреваете.

  2. 2

    Проверьте наличие Set-Cookie на общедоступных страницах.

    Многие кеши отказываются хранить ответ, который устанавливает файл cookie. Аналитические и сеансовые файлы cookie на анонимных страницах являются частыми виновниками.

  3. 3

    Проверьте правила кеширования вашего CDN

    Убедитесь, что путь действительно кешируется, а не обходится, и посмотрите, на что меняется ключ кеша.

  4. 4

    Сравните запрос warmer с реальным

    Если warmer отправляет файл cookie, заголовок или пользовательский агент, которого нет у посетителей, возможно, он заполняет вариант кеша, который никто не запрашивает.

  5. 5

    Посмотрите список холодных URL-адресов Cache Health.

    Он точно определяет, какие URL-адреса затронуты, что обычно позволяет выявить закономерность. См. Состояние кеша.

Самая полезная диагностика

Дважды запросите один и тот же URL-адрес с помощью Curl и сравните тайминги и заголовки кеша. Если ваш второй запрос также не выполняется быстрее, проблема определенно в настройках кеширования, а не в Cache Rocket.

Проверьте время и заголовки кеша вручную
bash
curl -s -o /dev/null -w "%{time_total}s\n" https://www.example.com/
curl -s -o /dev/null -w "%{time_total}s\n" https://www.example.com/

curl -sI https://www.example.com/ | grep -i "cache\|age\|set-cookie"

Проблемы интеграции

Вебхук развертывания возвращает 401.
Ключи API неверны, просрочены или заменены.Убедитесь, что имена заголовков совпадают с X-Public-Key и X-Secret-Key, и проверьте наличие усеченных значений.См. [Ключи API] ( /documentation/api-keys ).
Развертывание веб-перехватчика завершается успешно, но ничего не греется.
hostname в теле не соответствует активному warmer. Проверьте hostname, включая www, и убедитесь, что warmer активен.
Очистка CDN отклонена.
У токена нет разрешения на очистку или он связан с неправильным идентификатором зоны. См. Интеграция CDN.
Плагин WordPress сообщает, что ключи недействительны.
Повторно скопируйте оба ключа, наблюдая за пробелами. Если с тех пор была создана новая пара, старая больше не работает.
Изображения Next.js по-прежнему попадают в /_next/image или возвращают неизвестный токен сайта.
Убедитесь, что @cacherocket/next обертывает next.config , CACHEROCKET_SITE_TOKEN устанавливается во время сборки, а токен соответствует активному сайту в разделе Account → Next.js .См. Next.js .
Удаленные образы Next.js не оптимизированы.
Добавьте источник изображения в белый список сайта.Для относительных путей /public требуется CACHEROCKET_ASSET_ORIGIN .Превышение квоты преобразует программный сбой в исходный URL-адрес.
Оповещения никогда не приходят.
Проверьте URL-адрес веб-перехватчика напрямую с помощью Curl.Убедитесь, что выбрано хотя бы одно событие и что интеграция со Slack или Discord все еще существует.

Все еще застрял?

Соберите их перед обращением в службу поддержки — это превратит длинный разговор в один ответ:

  • Имя warmer и задействованный hostname.
  • Чего вы ожидали и что произошло на самом деле.
  • Репрезентативные коды состояния и время загрузки со страницы результатов warmer.
  • Показывает ли hostname Проверено.
  • Название вашего плана и идентификатор подписки из раздела «Ссылки» на странице подписки.
  • Для Next.js: идентификатор сайта, версия @cacherocket/next и то, связана ли проблема с доставкой образа или потеплением развертывания.