ExaBot в материале со slug exa — краулер компании Exa (exa.ai): индексация для AI-поиска и semantic retrieval API. Это отдельная история от исторического Exabot Exalead, старого французского поискового краулера (см. отдельную статью про Exabot) — совпадение названия не означает общего происхождения.
Параметры
| Параметр | Значение |
|---|---|
| Типичный UA | Mozilla/5.0 (compatible; ExaBot/1.0; +https://exa.ai/bot) |
| Токен | ExaBot / exabot — по текущей официальной документации Exa продукт-токен для robots.txt называется ExaSearchBot; проверяйте оба варианта в логах |
| Оператор | Exa |
| IP-лист | ❌ Компактного официального feed обычно нет; вместо этого Exa предлагает криптографическую верификацию (см. ниже) |
| Назначение | Индекс для AI search / agent context — semantic retrieval API для сторонних AI-приложений |
| robots.txt | Официально соблюдается |
Новое: криптографическая верификация вместо IP-списка
Раньше основным способом подтвердить подлинность запроса было сопоставление IP или доверие строке UA — но у Exa для этого появился более надёжный механизм. Каждый запрос ExaSearchBot криптографически подписывается по схеме Web Bot Auth (HTTP Message Signatures, RFC 9421): запрос несёт заголовки Signature, Signature-Input и Signature-Agent, идентифицирующие Exa. Публичные ключи Ed25519 опубликованы отдельно и доступны для проверки. Практическое следствие: на инфраструктуре, которая уже поддерживает Web Bot Auth (Cloudflare, Akamai и подобные), верификация ExaSearchBot происходит автоматически на edge — ничего дополнительно настраивать не требуется. Это надёжнее классической связки UA + IP, потому что не зависит от того, с какого адреса пришёл запрос.
Нагрузка
По сводке TrafficVeil паттерн exa — порядка 8 тысяч запросов. Рядом в тех же логах может идти классический Exabot Exalead — обязательно смотрите полный URL внутри строки UA, чтобы не перепутать эти два независимых бота при настройке правил.
Подключите домен и посмотрите живую ленту: кто пришёл, с какой сети, что запрашивал и по какому правилу был пропущен или заблокирован.
Контроль
grep -iE "ExaBot|ExaSearchBot|exa\.ai" /var/log/nginx/access.log
User-agent: ExaBot
Disallow: /
User-agent: ExaSearchBot
Disallow: /
if ($http_user_agent ~* "ExaBot" && $http_user_agent ~* "exa\.ai") {
return 403;
}
Стратегия
- Нужна видимость в Exa AI search — Allow как для ExaBot, так и для ExaSearchBot, чтобы не потерять индексацию из-за смены названия токена
- Opt-out из AI-индекса Exa — Disallow + deny по обоим вариантам токена
- Не режьте все «Exabot» вслепую, если различаете исторический Exalead и текущий Exa по URL внутри строки UA
- Если инфраструктура сайта поддерживает Web Bot Auth — используйте криптографическую верификацию как основной способ подтверждения подлинности вместо IP-эвристик
Частые вопросы
Чем ExaBot из этой статьи отличается от исторического Exabot?
Какой токен сейчас актуален для robots.txt — ExaBot или ExaSearchBot?
Как теперь можно проверить подлинность запроса без списка IP?
Нужно ли что-то настраивать вручную для этой верификации?
Соблюдает ли ExaSearchBot правила robots.txt?
Как не спутать краулер Exa с историческим Exabot Exalead в логах?
Команда TrafficVeil разрабатывает инструменты защиты сайтов от ботов, DDoS и веб-атак. Разборы ботов пишем по логам подключённых доменов и открытым данным операторов.