# Блокировки ИИ-агентов Cloudflare: что исправлять первым

Source: https://ipvolt.com/ru/blog/cloudflare-ai-agent-proxy-setup
Markdown: https://ipvolt.com/ru/blog/cloudflare-ai-agent-proxy-setup.md
Language: ru

[ipvolt — главная](https://ipvolt.com/ru.md) / [Блог](https://ipvolt.com/ru/blog.md) / Блокировки ИИ-агентов Cloudflare: что исправлять первым

Анализ
Опубликовано: 2026-09-14
Обновлено: 2026-09-14
Автор: ipvolt
8 мин чтения

Как диагностировать сбои Cloudflare в задачах ИИ-агентов, настроить стабильный прокси для браузера и отсеивать челленджи и невалидный контент до загрузки в RAG.

Для разрешённой задачи браузерного агента начните с **одного стабильного исходящего адреса, поддерживаемого провайдером, одного контекста браузера и фильтра ответов перед извлечением**. Затем меняйте тот компонент, на который реально указывает сбой. Аутентификация на прокси требует исправления конфигурации. Отказ целевого сайта требует решения о доступе. Страница челленджа не должна попасть в ваш RAG-корпус, даже если она возвращает HTTP 200.

Такова полезная схема для скрейпера, воркера извлечения или браузерного агента, столкнувшегося со сбоями Cloudflare. Здесь нет свидетельств того, что переход на резидентные или мобильные прокси устраняет любую блокировку.

**Проверка даты: 14 сентября 2026 года.** Объявленное Cloudflare изменение запланировано на 15 сентября. Эта статья описывает это объявление и диагностический процесс; она не сообщает о наблюдаемом развёртывании и не устанавливает причину вашей текущей ошибки.

## Что меняется 15 сентября

Июльское объявление Cloudflare разделяет активность на **Search, Agent и Training**. Для новых подключаемых доменов по умолчанию будет блокироваться активность Training и Agent на страницах с рекламой, а Search останется разрешённым. Отдельно краулер, совмещающий Search с Training, подпадает под самое строгое применимое правило, включая существующую блокировку Training. Умолчание для страниц с рекламой и классификация смешанного назначения — это разные изменения. [Исходное объявление Cloudflare](https://blog.cloudflare.com/content-independence-day-ai-options/)

Пресс-релиз компании говорит, что умолчания для страниц с рекламой распространяются на новых клиентов, новые сайты существующих клиентов и существующих клиентов на тарифе Free, **если они не изменили настройки в панели до 15 сентября**. Формулировка «все сайты на бесплатном тарифе» теряет эту оговорку. Клиенты могут изменить свои настройки. [Объявление Cloudflare о затронутых группах клиентов](https://www.cloudflare.com/press/press-releases/2026/cloudflare-allows-the-agentic-internet-to-flourish-with-a-simple-philosophy-your-content-your-rules/)

Владельцы могут выбрать для каждой категории блокировку всего сайта, блокировку страниц с рекламой или Allow. Категории описывают активность; название вашей браузерной библиотеки или RAG-конвейера не определяет его классификацию. Cloudflare сама определяет страницы с рекламой, поэтому отключение загрузки рекламы в браузере не переопределяет политику. [Справка по политике ИИ-ботов](https://developers.cloudflare.com/bots/additional-configurations/block-ai-bots/)

## Определите отказавший узел, прежде чем менять прокси

Держите обмен с прокси, навигацию к целевому сайту и любой ответ управляемого API для скрейпинга раздельно в записи об извлечении. HTTP 402 от `api.firecrawl.dev` и HTTP 402 от издателя требуют разных действий.

Сам по себе 403 не указывает на политику от 15 сентября. Cloudflare документирует несколько возможных источников, включая права на origin-сервере и другие правила безопасности. `cf-ray` помогает сопоставить запрос с событиями оператора сайта; он не называет правило, которое его отклонило. Записывайте отметку времени в UTC, соответствующий путь и Ray ID, когда он есть. Держите чувствительные параметры URL в тайне. [Причины 403](https://developers.cloudflare.com/support/troubleshooting/http-status-codes/4xx-client-error/error-403/), [диагностика по Ray ID](https://developers.cloudflare.com/fundamentals/reference/cloudflare-ray-id/)

| Наблюдение | Следующее действие | Обработка в RAG |
| --- | --- | --- |
| 407 от прокси или ошибка аутентификации/соединения в браузере | Проверьте настроенный шлюз, учётные данные и аккаунт у провайдера. Chromium может показывать сбой прокси как исключение навигации. | Пометить извлечение недоступным; сохранить причину. |
| `cf-mitigated: challenge` от целевого сайта | Изучите разрешённый путь доступа к сайту и требования к браузеру. Прекратите автоматические повторы челленджа. | Поместить ответ в карантин, включая номинальный 200. |
| 403 от целевого сайта без этого сигнала челленджа | Попросите оператора сайта сопоставить запрос с правилами доступа/безопасности; используйте согласованный API, фид или разрешённый путь, где они есть. | Недоступно; конкретная политика остаётся неизвестной. |
| 429 от известного узла | Соблюдайте `Retry-After`, если он передан; снизьте нагрузку в затронутой области и ограничьте общий бюджет повторов. | Отложить извлечение; сохранить статус его свежести. |
| 402 от целевого сайта | Изучите контекст оплаты/доступа издателя и документированную интеграцию. | Недоступно до более позднего принятого запроса. |
| HTTP 402 от API Firecrawl | Проверьте кредиты Firecrawl и настройки биллинга. | Статус цели остаётся неизвестным, если он не сообщён отдельно. |
| HTTP 200 с отсутствующим, пустым или неверным контентом | Проверьте рендеринг, обязательные подресурсы и контракт извлечения. | Сохранить предыдущий валидный документ; пометить неудачное обновление. |

Заголовок челленджа — документированный Cloudflare сигнал в ответе. Отсутствие заголовка не устанавливает пригодность контента. HTTP 407 указывает на аутентификацию на прокси; 429 оставляет область подсчёта на усмотрение отвечающего сервиса, поэтому смена исходящего адреса не доказывает сброс лимита. [Обнаружение челленджа](https://developers.cloudflare.com/cloudflare-challenges/challenge-types/challenge-pages/detect-response/), [семантика 407](https://www.rfc-editor.org/rfc/rfc9110.html#section-15.5.8), [семантика 429](https://www.rfc-editor.org/rfc/rfc6585#section-4)

Для хостируемого Firecrawl изучайте внешнюю ошибку API вместе с возвращёнными метаданными цели и ошибками задания. Его каталог ошибок API описывает 402 как нехватку кредитов или отсутствие настроек биллинга. Его ответ scrape может отдельно нести `data.metadata.statusCode`. Эти поля должны оставаться раздельными в ваших логах. [Ошибки Firecrawl](https://docs.firecrawl.dev/api-reference/errors), [контракт ответа scrape](https://docs.firecrawl.dev/api-reference/endpoint/scrape)

## Конфигурация прокси для полной браузерной задачи

Для процесса с состоянием запрашивайте стабильный исходящий адрес на всё время задачи и сохраняйте один контекст браузера на всех её шагах. Привязку исходящего адреса контролирует провайдер; контекст хранит cookies и хранилище браузера. Уточните у провайдера длительность сессии, поведение при переподключении и политику замены при досрочном выходе. Фиксированный адрес шлюза сам по себе не доказывает ни одно из этих свойств. [Руководство по непрерывности сессий](/ru/guides/rotating-vs-sticky-proxies) объясняет, что проверять.

Одобренный фиксированный адрес — полезная отправная точка, когда владелец сайта разрешает этот адрес. Требуемый регион может оправдать региональный выход. Для другой нагрузки сравнивайте кандидатные маршруты на одном и том же наборе URL, аккаунте, сессии, регионе и параллелизме. Считайте свежие валидные документы на каждый запрошенный документ и стоимость на принятый документ, включая повторы и трафик рендеринга. Ярлык «резидентный/мобильный» — недостаточное свидетельство для выбора победителя; [сравнение прокси](/ru/blog/residential-vs-datacenter-proxies) описывает эту оценку.

Размещайте настройки прокси там, где выполняется запрос страницы:

| Стек | Граница конфигурации | Деталь, меняющая диагноз |
| --- | --- | --- |
| Playwright | Передайте объект `proxy` с `server`, `username` и `password` в `browser.newContext` или настройте запуск браузера. | `httpCredentials` — это аутентификация на целевом сайте. Отдельному HTTP-клиенту на Node/Python нужна собственная конфигурация. [Документация по сети](https://playwright.dev/docs/network#http-proxy) |
| Puppeteer | Задайте `proxyServer` контекста; используйте `page.authenticate` для логина/пароля прокси до навигации. | `proxyServer` — строка конечной точки. Настраивайте и вновь создаваемые страницы. [Опции контекста](https://pptr.dev/api/puppeteer.browsercontextoptions), [аутентификация](https://pptr.dev/api/puppeteer.page.authenticate) |
| Browser Use | Open-source-браузер принимает `Browser(proxy=ProxySettings(...))`. | При CDP или управляемом браузере проверяйте контракт исходящего трафика удалённого браузера. Локальные настройки не дают контроля над уже запущенным удалённым браузером. [Параметры](https://docs.browser-use.com/open-source/customize/browser/all-parameters), [удалённые браузеры](https://docs.browser-use.com/open-source/customize/browser/remote) |
| Хостируемый Firecrawl | Поле `proxy` в v2 scrape выбирает `basic`, `enhanced` или `auto`; по умолчанию `auto`. | Это селектор управляемой стратегии, а не пользовательский URL прокси. Локальный `HTTP_PROXY` не настраивает удалённый запрос к цели. [Scrape API](https://docs.firecrawl.dev/api-reference/endpoint/scrape) |

Держите повторы в рамках одного бюджета задачи. Внутренние попытки хостируемого сервиса плюс повторы SDK плюс цикл «попробовать ещё раз» у агента могут умножать объём работы. После отказа сохраните причину и выберите следующее действие из таблицы, прежде чем планировать новую попытку.

## Запускайте фильтр ответов перед извлечением

Скачиваемый пробник на Playwright выполняет одну навигацию, классифицирует основной ответ и проверяет наличие непустого текста в ожидаемом CSS-селекторе. Он выводит небольшую JSON-диагностику без целевого URL, тела, учётных данных и сырого исключения. Он не извлекает и не загружает контент.

Скачайте [probe.mjs](https://ipvolt.com/downloads/cloudflare-ai-agent/probe.mjs), [package.json](https://ipvolt.com/downloads/cloudflare-ai-agent/package.json), [package-lock.json](https://ipvolt.com/downloads/cloudflare-ai-agent/package-lock.json), [test-fixture.mjs](https://ipvolt.com/downloads/cloudflare-ai-agent/test-fixture.mjs) и [README](https://ipvolt.com/downloads/cloudflare-ai-agent/README.md) в один каталог. Используйте Node.js 22 или новее, выполните `npm ci`, затем `npx playwright install chromium`. Пакет фиксирует Playwright 1.63.0.

Передайте эти настройки через ваш существующий механизм конфигурации/секретов, затем запустите `node probe.mjs`:

- `PROXY_SERVER`: URL шлюза `http://` без учётных данных, пути и строки запроса.
- `PROXY_USERNAME` и `PROXY_PASSWORD`: учётные данные вашего провайдера с любой документированной настройкой сессии.
- `TARGET_URL`: проверяемая страница.
- `EXPECTED_SELECTOR`: конкретный CSS-селектор, например `main article[data-document-id]`, найденный элемент которого должен содержать текст.

Пробник отводит 15 секунд на навигацию и ещё 5 секунд на проверку контента. Он создаёт и закрывает свежий контекст при каждом вызове. Для многошаговой продакшен-задачи сохраняйте контекст задачи и применяйте те же проверки к её соответствующим ответам. [Руководство по настройке Playwright](/ru/guides/playwright-proxy-setup) описывает учётные данные и конфигурацию контекста.

Этот участок классификации выполняется до проверки селектора:

```javascript
  if (result.cf_mitigated) return 'challenge';
  if (result.status === 402) return 'payment_or_access_review';
  if (result.status === 403) return 'access_review';
  if (result.status === 407) return 'proxy_auth_error';
  if (result.status === 429) return 'rate_limited';
  if (result.status >= 500 && result.status < 600) return 'upstream_error';
  if (result.status !== 200) return 'unexpected_status';
  if (!/^text\/html(?:\s*;|$)/i.test(headers['content-type'] ?? '')) return 'invalid_content';
  return null;
```

Полная функция устанавливает `cf_mitigated` только когда заголовок ответа равен `challenge`. `null` здесь означает переход к проверке контента. Итоговый результат `accepted_content` требует HTTP 200, HTML и непустого ожидаемого контента; он завершается с кодом 0. Остальные результаты завершаются с кодом 2.

В наших **18 синтетических проверках** все ожидаемые результаты совпали: четыре ответа прошли минимальный фильтр, четырнадцать были отклонены. Фикстурный ответ со статусом 200 и `cf-mitigated: challenge` дал `outcome: challenge` и код выхода 2. Отсутствующий или пустой ожидаемый контент тоже не прошёл. Неверные учётные данные прокси показали 407 и `proxy_auth_error` после двух запросов аутентификации; ни один запрос не был переслан. Один принятый случай намеренно включал падающий подресурс с 403, демонстрируя предел проверки основного документа. [Точные результаты фикстур](https://ipvolt.com/downloads/cloudflare-ai-agent/example-output.json)

Запустите `node test-fixture.mjs`, чтобы воспроизвести локальный набор. Он использовал Node 26.8.1, Playwright 1.63.0 и Chromium 153.0.8010.12 с локальным origin и HTTP-прокси с аутентификацией. Команды установки и фикстура также запускались из идентичных файлов, скачанных с локального HTTP-сервера. Эти проверки устанавливают поведение этого пробника на синтетических ответах; они не устанавливают живой доступ через Cloudflare, стабильность исходящих адресов провайдера или поведение HTTPS CONNECT.

Считайте принятие разрешением на более глубокую валидацию. Широкий селектор может совпасть с экраном входа, а обязательный JSON-подзапрос может упасть, пока основной HTML проходит. Проверяйте идентичность документа, обязательные поля, локаль и свежесть на том самом контенте, который будет загружать ваш воркер. Успешный пробник не может одобрить более поздний запрос, вернувший что-то другое. Сохраняйте последний валидный документ при неудачном обновлении, оставляя его старое время получения видимым потребителю.

## Когда решение лежит в правилах доступа сайта

Если вы управляете целевым сайтом, изучите сработавшее правило безопасности вместе с его политикой для ИИ-краулеров. Настройка Allow в AI Crawl Control всё равно может быть переопределена правилами WAF, которые выполняются раньше. Поэтому отсутствие запроса в представлении ИИ-краулеров — повод проверить и события безопасности. Если сайтом владеет другая команда, передайте идентификаторы запросов и согласуйте предполагаемый маршрут доступа. [Приоритет правил Cloudflare](https://developers.cloudflare.com/ai-crawl-control/configuration/ai-crawl-control-with-waf/)

Pay Per Crawl — отдельная схема доступа. Его документация сейчас помечает его как закрытую бету; неоплаченный платный запрос может получить HTTP 402 с `crawler-price`. Оплаченные запросы требуют документированной регистрации и потока с подписанным намерением оплаты. Добавить неподписанный заголовок оплаты недостаточно, а блокировки WAF/Bot Management всё равно могут помешать доступу. Решайте вопрос участия и бюджета осознанно, вместо того чтобы позволять агенту трактовать любой 402 как разрешение тратить. [Область Pay Per Crawl](https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/), [протокол запросов](https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/use-pay-per-crawl-as-ai-owner/crawl-pages/)

Ваш конвейер должен уметь возвращать «источник недоступен» с причиной и отметкой времени. Это даёт вызывающей стороне пригодное решение, когда всё ещё требуется исправление аутентификации, одобренное владельцем изменение правил или поддерживаемый интерфейс к контенту.

*Метод: текст написан ipvolt с помощью ИИ и сверен с первичной документацией по ссылкам 14 сентября 2026 года. Скачиваемый тест использует локальные синтетические ответы. Он не измеряет живые блокировки Cloudflare, производительность прокси-провайдеров, поведение HTTPS CONNECT или развёртывание 15 сентября.*

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

[Получить уведомление, когда откроется доступ к ipvolt](https://ipvolt.com/#waitlist-hero).

## Источники

- [Cloudflare: Your site, your rules — new AI traffic options](https://blog.cloudflare.com/content-independence-day-ai-options/)
- [Cloudflare: September 15 announcement and existing Free customer scope](https://www.cloudflare.com/press/press-releases/2026/cloudflare-allows-the-agentic-internet-to-flourish-with-a-simple-philosophy-your-content-your-rules/)
- [Cloudflare: Block AI Bots](https://developers.cloudflare.com/bots/additional-configurations/block-ai-bots/)
- [Cloudflare: Detect a Challenge Page response](https://developers.cloudflare.com/cloudflare-challenges/challenge-types/challenge-pages/detect-response/)
- [Cloudflare: AI Crawl Control with WAF](https://developers.cloudflare.com/ai-crawl-control/configuration/ai-crawl-control-with-waf/)
- [Cloudflare: Error 403](https://developers.cloudflare.com/support/troubleshooting/http-status-codes/4xx-client-error/error-403/)
- [Cloudflare: Ray ID](https://developers.cloudflare.com/fundamentals/reference/cloudflare-ray-id/)
- [Cloudflare: What is Pay Per Crawl?](https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/what-is-pay-per-crawl/)
- [Cloudflare: Pay Per Crawl request protocol](https://developers.cloudflare.com/ai-crawl-control/features/pay-per-crawl/use-pay-per-crawl-as-ai-owner/crawl-pages/)
- [Playwright: HTTP proxy configuration](https://playwright.dev/docs/network#http-proxy)
- [Puppeteer: BrowserContextOptions](https://pptr.dev/api/puppeteer.browsercontextoptions)
- [Puppeteer: Page.authenticate](https://pptr.dev/api/puppeteer.page.authenticate)
- [Browser Use: Browser parameters](https://docs.browser-use.com/open-source/customize/browser/all-parameters)
- [Browser Use: Remote browser configuration](https://docs.browser-use.com/open-source/customize/browser/remote)
- [Firecrawl: Hosted v2 scrape API](https://docs.firecrawl.dev/api-reference/endpoint/scrape)
- [Firecrawl: API errors](https://docs.firecrawl.dev/api-reference/errors)
- [RFC 6585: HTTP 429](https://www.rfc-editor.org/rfc/rfc6585#section-4)
- [RFC 9110: Proxy authentication required](https://www.rfc-editor.org/rfc/rfc9110.html#section-15.5.8)

## Узнайте, когда откроется доступ к ipvolt.

Пока вы здесь

ipvolt в разработке. Оставьте email, и мы один раз напишем, когда откроется доступ.

Одно письмо, когда откроется доступ. Больше ничего.

[Получить ранний доступ](https://ipvolt.com/ru/blog/cloudflare-ai-agent-proxy-setup#waitlist-blog-end)

[Конфиденциальность](https://ipvolt.com/privacy)


## Похожие статьи

- [Настройка прокси в MostLogin: добавить, проверить, поделиться](https://ipvolt.com/ru/blog/mostlogin-proxy-setup.md) (Анализ, 17 сент. 2026 г., 7 мин чтения): Пошагово добавляем прокси в профили MostLogin: протокол, хост и порт, учётные данные, проверка IP, доступ команды, массовый импорт и ошибки, которые всё ломают.
- [Цены на Amazon: ваш оффер против Featured Offer](https://ipvolt.com/ru/blog/amazon-offer-vs-featured-offer.md) (Анализ, 16 сент. 2026 г., 6 мин чтения): Как сравнивать свой оффер на Amazon с Featured Offer: сопоставленный контекст, известная доставка и протестированная офлайн-модель, сохраняющая отсутствующие данные.
- [Обновления листингов Amazon: «принято» не значит «в продаже»](https://ipvolt.com/ru/blog/amazon-listing-update-reconciliation.md) (Анализ, 14 сент. 2026 г., 7 мин чтения): Как разбирать принятые обновления листингов Amazon: отдельно сверяем отправленные атрибуты, живые офферы, остатки и возможность покупки по практической матрице сверки.

## Связанные руководства

- [Настройка прокси в Playwright](https://ipvolt.com/ru/guides/playwright-proxy-setup.md): Задайте HTTP-прокси с аутентификацией для контекста браузера Playwright, изолируйте состояние теста и диагностируйте навигацию отдельно от подресурсов.
- [Ротируемые и sticky-прокси: планируйте непрерывность сессии](https://ipvolt.com/ru/guides/rotating-vs-sticky-proxies.md): Выбирайте ротацию под наименьший законченный сценарий, отличайте привязку к выходу от cookie и проверяйте, что происходит, когда sticky-сессия завершается раньше срока.
- [Как исправить ошибку прокси 407, не гадая](https://ipvolt.com/ru/guides/fix-proxy-error-407.md): Разбираем ошибку Proxy Authentication Required по шагам: шлюз, метод аутентификации, кодирование учётных данных, область действия аккаунта и настройки клиента.

## О ipvolt

Технический анализ от команды ipvolt.

Доступ к ipvolt пока не открыт.

[Читать оригинал на английском](https://ipvolt.com/blog/cloudflare-ai-agent-proxy-setup.md)
