INTEGRITY Документация

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

Частые проблемы

Проксированные хосты

Если ваш хост проксируется через Cloudflare, посетители могут сталкиваться с Challenge на страницах вашего сайта.

Cloudflare выдаёт проверки через Challenge Platform, это та же базовая технология, на которой работает Turnstile.

В отличие от наших решений на основе Challenge page, Turnstile позволяет запускать проверки в любой части сайта менее навязчиво и не требует использования CDN Cloudflare.

Поддержка устаревших браузеров

Microsoft Internet Explorer не поддерживает проверки. Если вы используете Internet Explorer, попробуйте другой современный браузер (Chrome, Safari, Firefox). Если вы уже используете современный браузер, убедитесь, что установлена его последняя версия.

Заголовок Referer

HTTP-запрос посетителя содержит заголовок referer, указывающий на сайт, с которого он пришёл. Когда посетитель сталкивается со страницей проверки и проходит её, запрос с этим referer отправляется на источник, а ответ на запрос передаётся пользователю. JavaScript на странице ответа может считать значение document.referer, но оно будет неточным.

Например, к посетителю, пришедшему с определённого сайта, применяется Правило WAF через промежуточную Challenge Page, которую показывает ваш домен. Как только посетитель загрузит главную страницу сайта, document.referer значение указывает на ваш домен, а не на исходный сайт.

Это влияет на такие инструменты, как Google Analytics, которые считывают referer из JavaScript, поскольку он заменяет исходный сайт, с которого пришёл посетитель.

Вы можете добавить скрипты отслеживания, например JavaScript Google Tag Manager, в существующий Challenge Page чтобы зафиксировать правильный заголовок referer в первом запросе.

Пример кода на JavaScript
<script>
    (function () {
      const gaIds = {
        "<YOUR_DOMAIN>": "<GA_TRACKING_ID>",
      };

      const gaId = gaIds[window.location.hostname];

      if (gaId) {
        const src = "https://www.googletagmanager.com/gtag/js?id=";

        const gaScript = document.createElement("script");
        gaScript.src = src.concat(gaId);
        document.body.appendChild(gaScript);

        window.dataLayer = window.dataLayer || [];
        function gtag() {
          dataLayer.push(arguments);
        }
        gtag("js", new Date());
        gtag("config", gaId);
      } else {
        console.warn(
          "Google Analytics ID not found for host:",
          window.location.hostname,
        );
      }
    })();
  </script>
</body>

Предварительные запросы Cross-Origin Resource Sharing (CORS)

Предварительные запросы Cross-Origin Resource Sharing (CORS), или OPTIONS, исключите учётные данные пользователя, включающие cookie. В результате cf_clearance cookie не будет отправлен с запросом, из-за чего он не сможет обойти страницу Challenge Page (Non-interactive, Managed или Interactive Challenge).

Проверки на сайтах, защищённых Cloudflare

Cloudflare выдаёт проверки посетителям сайта для защиты от вредоносной активности, такой как атаки ботов и попытки DDoS. Если реальному человеку неожиданно показывается проверка, причина обычно в том, что его запрос был помечен одной из функций защиты.

Источник Описание
Высокий показатель угрозы IP-адреса с высоким показателем риска запускают Challenges.
Репутация IP-адреса Если ваш IP-адрес ранее проявлял подозрительную активность, он может быть помечен как небезопасный.
Обнаружение ботов Автоматизированный трафик, похожий на ботов, отфильтровывается Cloudflare.
Пользовательские правила Web Application Firewall (WAF) Владельцы сайтов могут настраивать правила для конкретных регионов или user agent.
Browser Integrity Check Cloudflare проверяет, соответствует ли браузер определённым стандартам.
Challenge Passage Такие технологии, как Privacy Pass, снижают частоту повторных Challenge.

Чтобы избежать повторных Challenge, посетители могут предпринять следующие шаги, чтобы их окружение не вызывало срабатывание проверок безопасности:

Добавлять в список разрешений трафик от действий по устранению угроз

Если вам нужно предотвратить Block или Challenge действие не применялось к определенным запросам, например к известным поисковым роботам, сервисам мониторинга или внутренним API, настройте исключение с помощью Пользовательские правила WAF.

Cloudflare поддерживает два основных способа создания таких исключений:

Самый надёжный способ создать исключение: настроить пользовательское правило с действием Пропустить действие. Это позволяет соответствующим запросам обходить некоторые функции безопасности, включая Bot Management и другие правила WAF.

Пример

Заблокируйте Amazon Web Services (AWS) и Google Cloud Platform (GCP) из-за большого объёма нежелательного трафика, но разрешите Googlebot и других известных ботов, которых проверяет Cloudflare.

2. Измените Rule Expression

Вы можете уточнить выражение Block или Challenge правило, чтобы напрямую исключить заведомо легитимный трафик с помощью логического оператора not и списка исключений, например списка IP-адресов, кода страны или ASN.

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

Пример

Исключите несколько IP-адресов из Block или Challenge правило, которое оценивает показатель атаки.