MATHCAST
Mathcast / Документы / Mathchast_22 — robots, Sitemap, IndexNow и AI crawlers
МАТЧАСТЬ / DISCOVERY & CRAWLER POLICY / DOCUMENT 22 / 02.09.2026

robots.txt, Sitemap, IndexNow и AI crawlers

Как «Матчасть» сообщает поисковикам и AI-системам о новых, обновлённых и удалённых страницах; какие разделы должны быть доступны роботам; чем crawling отличается от indexing; как организовать XML Sitemap, IndexNow, OAI-SearchBot, GPTBot, Claude-SearchBot, PerplexityBot, Google-Extended, Bing/Copilot и WAF так, чтобы максимизировать обнаружение публичного контента и не открыть административную часть сайта.

robots ≠ noindexзапрет обхода не является надёжным способом удаления URL из поиска
10 000URL можно передать Яндексу одним IndexNow POST
50 000максимум URL в одном Google Sitemap
Search ≠ Trainingу OpenAI и Anthropic есть отдельные роботы для поиска и обучения

1. Главное решение

Сделать Discovery Pipeline частью publishing engine. После публикации, существенного обновления, переноса или удаления страницы система сама обновляет sitemap, отправляет event в IndexNow, проверяет crawl/index directives, поддерживает разрешение AI-search crawlers и записывает результат в Publication Health.
CONTENT EVENT PublicationPublished PublicationUpdated PublicationMoved PublicationRemoved EntityBecameIndexable TopicPublished ↓ DISCOVERY WORKER ├─ canonical check ├─ robots/index state check ├─ sitemap update ├─ IndexNow queue ├─ cache/CDN invalidation ├─ structured data rebuild └─ publication health check ↓ OBSERVATION Google / Yandex / Bing / ChatGPT / Claude / Perplexity

2. Crawling, indexing и ranking — разные этапы

ЭтапЧто означаетКонтролируем?
DiscoveryСистема узнала URLВо многом да: ссылки, sitemap, IndexNow
CrawlingРобот запросил страницуМожем разрешать/ограничивать, но не назначаем момент визита
IndexingСистема решила хранить/использовать страницу в индексеМожем сделать страницу eligible, но не гарантировать включение
Ranking / citationСтраница показана/процитирована по конкретному запросуНе контролируем напрямую
IndexNow, Sitemap, robots.txt и structured data не являются гарантией индексации, позиции или AI citation.

3. robots.txt управляет crawling, а не секретностью

Google прямо указывает, что robots.txt в первую очередь управляет crawler traffic и не является надёжным способом скрыть web page из результатов поиска. URL, запрещённый robots.txt, всё ещё может быть обнаружен по внешним ссылкам. Яндекс аналогично предупреждает: запрещённая robots.txt страница может участвовать в поиске.

robots.txt: "не заходи сюда" НЕ: "забудь, что URL существует" Для удаления из индекса: noindex / 404 / 410 / auth / removal tools в зависимости от задачи.

4. noindex должен быть доступен роботу

Google и Яндекс отмечают важный нюанс: если страница закрыта robots.txt, робот может не увидеть noindex внутри неё.

Если публичная страница должна исчезнуть из поиска, но продолжать существовать по URL, обычно нужно позволить crawler доступ и отдать noindex.
ЗадачаПравильный механизм
Private cabinetAuthentication / authorization
Public URL, но не нужен в поискеnoindex, crawler должен суметь его прочитать
Удалён навсегда404/410
Переехал301/308
Снизить обход мусорных URLНе создавать crawlable links; при необходимости robots rules
Спрятать секретные данныеНикогда не полагаться на robots.txt

5. Приватная часть «Матчасти»

Админка, личный кабинет, billing и draft preview защищаются аутентификацией. robots.txt — только дополнительная crawler hygiene.
PRIVATE: /admin/ /account/ /workspace/ /billing/ /checkout/ /api/private/ /preview/private/ REQUIRE: auth authorization no public data leakage robots: secondary defense only

6. Публичные классы URL

КлассCrawlIndexSitemapIndexNow
Published article/case/research/newsAllowIndexableДаPublish/update/delete
Eligible company/expert/topicAllowIndexableДаПри важных изменениях
Shell entityAllow if publicNoindexНетНет
Internal searchAllow for noindex recognition or avoid linksNoindexНетНет
Facet/filter explosionMinimize / potentially restrict crawlingНе indexableНетНет
Private/adminAuth + disallowНетНетНет

7. Базовый robots.txt для MVP

User-agent: * Allow: / Disallow: /admin/ Disallow: /account/ Disallow: /workspace/ Disallow: /billing/ Disallow: /checkout/ Disallow: /api/private/ Disallow: /preview/private/ Sitemap: https://mathchast.com/sitemap.xml

Файл должен оставаться коротким и понятным. Яндекс требует размещать robots.txt в корне и обрабатывать его как текстовый файл; для Яндекса размер не должен превышать 500 КБ.

8. Не закрывать публичные assets

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

Особенно важно для:

9. Но публичный сайт должен быть HTML-first

Документ 21 уже зафиксировал SSR/server-rendered подход. Это снижает зависимость от JavaScript crawler rendering и делает страницу одинаково понятной поисковикам и AI crawlers.
HTTP 200 → HTML contains main content → links → metadata → JSON-LD → assets JS: enhancement not sole content source

10. Sitemap architecture

https://mathchast.com/sitemap.xml → sitemap index /sitemaps/articles.xml /sitemaps/cases.xml /sitemaps/research.xml /sitemaps/news.xml /sitemaps/companies.xml /sitemaps/experts.xml /sitemaps/topics.xml

Это повторяет информационную архитектуру документа 18 и позволяет отдельно мониторить каждый page class.

11. Лимиты Sitemap

Google ограничивает один Sitemap 50 000 URL и 50 МБ в несжатом виде. Если сайт превышает лимит, используются несколько файлов и sitemap index.

Даже если у «Матчасти» первые годы будет меньше 50 000 URL, разделение sitemap по типам стоит делать сразу ради диагностики.

12. В Sitemap только canonical URLs

URLВ Sitemap?
Published canonical 200Да
Noindex URLНет
301 redirectНет
404/410Нет
Tracking URLНет
Filter resultНет
Duplicate profile before mergeНет

13. lastmod

Google использует lastmod, если он точен. Значение должно отражать последнее значительное изменение страницы: основной контент, structured data или ссылки. Изменение copyright date значимым не считается.

UPDATE lastmod: article body changed important claim changed structured data materially changed important link changed company core facts changed DON'T: view counter analytics cache refresh minor UI copyright year

14. changefreq и priority

Google указывает, что <priority> и <changefreq> игнорируются. Для «Матчасти» не строить сложную систему генерации этих полей.

15. Sitemap event rules

PublicationPublished → add canonical URL → lastmod = published_at PublicationUpdated → update lastmod if significant PublicationMoved → remove old URL → add new canonical → old gets 301 PublicationRemoved → remove from sitemap → 404/410 or redirect EntityBecameIndexable → add EntityBecameNoindex → remove

16. Sitemap как состояние, а не статический файл

Генерировать sitemap из таблицы indexable canonical resources, а не вручную или из всех routes приложения.
SELECT canonical_url,last_significant_modified FROM public_resources WHERE publication_state='ACTIVE' AND index_state='INDEXABLE' AND http_state_expected='200' AND canonical_url IS NOT NULL

17. Sitemap validation

В production monitor:

18. IndexNow: зачем он нам

Яндекс поддерживает IndexNow для автоматического уведомления о новых, изменённых и удалённых URL без ожидания очередного обычного обхода. Bing также рекомендует IndexNow и использует его для Bing/Copilot discovery.

Для динамического publishing продукта IndexNow нужно внедрять сразу: он идеально соответствует нашим domain events.

19. IndexNow не гарантирует indexing

Яндекс прямо предупреждает: передача URL по IndexNow не гарантирует, что страница будет проиндексирована.

IndexNow means: "URL изменился, пожалуйста, проверь" NOT: "включите URL в индекс" "поставьте его в выдачу" "покажите его AI"

20. Какие события отправлять в IndexNow

СобытиеОтправлять?
Новая indexable публикацияДа
Существенное обновлениеДа
URL удалён и теперь 404/410Да
URL перенесён 301/302Да
View count изменилсяНет
Каждый autosave draftНет
Каждые 2 минуты повторно тот же URLНет

21. Яндекс: до 10 000 URL одним POST

Актуальная документация Яндекса разрешает передавать до 10 000 URL в одном IndexNow POST. При этом Яндекс не рекомендует отправлять один и тот же URL слишком часто; если повтор нужен, документация приводит интервал около 10 минут как допустимый ориентир.

INDEXNOW QUEUE event → normalize canonical URL → deduplicate → debounce → batch → POST → record response responses: 200 OK 202 key pending 403 key error 422 invalid 429 rate limit

22. IndexNow key

Для отправки URL Яндекс требует подтверждающий ключ, размещённый на сайте. Для subdomains Яндекс рекомендует отдельный ключ на каждый subdomain.

https://mathchast.com/{key}.txt content = {key} IndexNow worker: host = mathchast.com key = ... keyLocation = ... NEVER: commit secret operational metadata that should not be public Но сам IndexNow verification key по протоколу должен быть доступен.

23. IndexNow architecture

Redis queue: indexnow_events event fields: url event_type changed_at source_event_id retry_count worker: dedupe URL verify host verify public state POST endpoint log result retry 429/5xx with backoff

24. IndexNow и Google

Для Google продолжаем использовать обычные crawlable links, XML Sitemap и Search Console. IndexNow pipeline проектируем для поисковиков, которые его поддерживают; не считать его универсальным способом отправки URL во все системы.

25. Bing и Copilot

Актуальные Bing Webmaster Guidelines отдельно рекомендуют:

Bing связывает качественную discovery architecture не только с Search, но и с grounding/видимостью в AI-powered search experiences, включая Copilot.

Поэтому Bing Webmaster Tools должен быть одним из launch integrations, а не «когда-нибудь потом».

26. OpenAI: OAI-SearchBot и GPTBot — разные цели

OpenAI в актуальном FAQ для издателей разделяет два сценария:

RobotЦельДля «Матчасти»
OAI-SearchBotОбнаружение/использование публичных страниц для ChatGPT search summaries/snippets и ссылокРазрешить
GPTBotКонтроль потенциального использования web content для обученияОтдельное business-policy решение
Это важнейшая возможность: можно разрешить OAI-SearchBot для ChatGPT Search и при этом отдельно запретить GPTBot, если мы захотим opt-out из потенциального training use.

27. Рекомендуемая OpenAI policy на старте

User-agent: OAI-SearchBot Allow: / User-agent: GPTBot Disallow: /

Почему: основной продукт «Матчасти» требует search discoverability/citations, а потенциальное model training не является необходимым условием ChatGPT Search. Поэтому консервативный launch policy может разрешать SearchBot и блокировать GPTBot. Если позже появится осознанная политика лицензирования/обучения, GPTBot rule можно изменить.

28. ChatGPT referrals

OpenAI сообщает, что переходы из ChatGPT Search автоматически получают utm_source=chatgpt.com.

Сразу выделить chatgpt.com как отдельный acquisition/referral source в analytics. Это будет одним из first-party signals AI Visibility, а не модельной оценкой.
traffic_source: chatgpt.com dashboard: sessions landing URLs CTA clicks company/profile destination conversion where consent/attribution permits

29. OAI-SearchBot и noindex

OpenAI указывает: если OAI-SearchBot заблокирован, но URL получен от стороннего search provider или через другие страницы, в ChatGPT Atlas может быть показана только ссылка и title. Если владелец не хочет и такого отображения, используется noindex; чтобы OpenAI смог прочитать noindex, crawler должен иметь доступ к странице.

Это ещё раз подтверждает правило: robots.txt и noindex решают разные задачи.

30. WAF для OpenAI

OpenAI публикует стабильные IP ranges для SearchBot и рекомендует проверять не только User-Agent, но и инфраструктурные сигналы. User-Agent можно подделать.

OPENAI WAF RULE UA = OAI-SearchBot AND IP ∈ official searchbot.json → trusted crawler policy UA = OAI-SearchBot BUT IP outside official set → normal bot/security policy not automatic whitelist

Официальный endpoint диапазонов: https://openai.com/searchbot.json. Обновление allowlist автоматизировать периодически.

31. Не whitelist по User-Agent без IP verification

Любой сканер может написать в заголовке «OAI-SearchBot». Поэтому WAF bypass нельзя строить только по строке User-Agent.

32. Anthropic: три разных робота

Anthropic в актуальном Help Center разделяет:

BotНазначениеРекомендация
ClaudeBotСбор публичного web content, потенциально используемого для model trainingМожно блокировать отдельно
Claude-SearchBotПоиск/индексация для улучшения search answersРазрешить
Claude-UserПолучение web content по запросу конкретного пользователя ClaudeРазрешить для максимальной user-directed visibility

33. Рекомендуемая Anthropic policy

User-agent: Claude-SearchBot Allow: / User-agent: Claude-User Allow: / User-agent: ClaudeBot Disallow: /

Это аналогична OpenAI-модели: разрешить search/user retrieval, training crawler держать отдельным политическим решением.

34. Anthropic Crawl-delay

Anthropic сообщает, что поддерживает non-standard Crawl-delay. На старте он нам не нужен: публичный сайт и CDN должны выдерживать нормальный crawler traffic. Использовать только если реальная нагрузка в логах подтверждает проблему.

35. Perplexity

Perplexity в документации 2026 года сообщает, что PerplexityBot используется для surface/link websites в поисковых ответах и не предназначен для pre-training foundation models. Perplexity также публикует IP ranges и рекомендует сочетать User-Agent и IP verification в WAF.

User-agent: PerplexityBot Allow: /
Для задачи AI Visibility PerplexityBot стоит разрешить.

36. Важный nuance Perplexity

Perplexity Help Center указывает, что при запрете PerplexityBot система не индексирует полный или частичный текст страницы через этого crawler, хотя может сохранять домен, headline и краткое factual summary. Поэтому «запретили crawler, но хотим полноценные citations» — противоречивая стратегия.

37. Perplexity WAF

Официальная документация публикует актуальные IP ranges для PerplexityBot и рекомендует периодически обновлять allowlist.

UA + official IP → verified Perplexity crawler official source: perplexity.com/perplexitybot.json

38. Googlebot и Google-Extended — разные вещи

TokenНазначениеВлияние на Google Search
GooglebotSearch crawling/indexingДа
Google-ExtendedPublisher control для использования уже crawled content в training future Gemini models и в grounding Gemini/Vertex AIНе влияет на inclusion/ranking в Google Search

Google прямо пишет, что Google-Extended не является отдельным HTTP User-Agent: crawling выполняется существующими Google user agents, а Google-Extended работает как robots.txt control token.

39. Google-Extended: важный trade-off

У Google нет такого же чистого разделения «training bot» и «AI-search grounding bot», как у OpenAI/Anthropic. Google-Extended управляет и training future Gemini, и рядом grounding use cases.
PolicyПлюсМинус
Google-Extended AllowМаксимальная потенциальная совместимость с Gemini grounding/use casesРазрешается также соответствующее использование для future Gemini model training
Google-Extended DisallowTraining opt-out для указанного Google useОдновременно ограничивает указанные Google grounding use cases

40. Рекомендация Google-Extended для «Матчасти»

На launch — Allow, если основная бизнес-цель действительно AI Visibility. Причина: «Матчасть» собирается измерять и усиливать присутствие в AI answers; ограничивать Gemini grounding на старте противоречит этой цели. Но это осознанное продуктово-лицензионное решение и должно быть публично зафиксировано в AI policy.

Google Search останется доступным независимо от решения по Google-Extended, если Googlebot не заблокирован.

41. Bing/Copilot и robots

Для Bing/Copilot основной discovery layer — нормальный Bing crawl, Sitemap и IndexNow. Не создавать отдельную «Copilot-only» архитектуру без официальной необходимости.

42. Recommended AI/search robots policy

# Standard public web User-agent: * Allow: / # OpenAI search visibility User-agent: OAI-SearchBot Allow: / # OpenAI training opt-out User-agent: GPTBot Disallow: / # Anthropic search/user visibility User-agent: Claude-SearchBot Allow: / User-agent: Claude-User Allow: / # Anthropic training opt-out User-agent: ClaudeBot Disallow: / # Perplexity search User-agent: PerplexityBot Allow: / # Google Gemini policy User-agent: Google-Extended Allow: / Sitemap: https://mathchast.com/sitemap.xml

Это рекомендуемая launch-конфигурация «Матчасти», а не универсальная настройка для любого сайта. Перед production перепроверить официальные bot names и политику каждого провайдера.

43. Почему не блокировать все training bots автоматически

Для OpenAI и Anthropic separation достаточно ясный: search и training разнесены. Для Google Extended — нет. Кроме того, «Матчасть» должна решить собственную publisher policy: хотим ли мы запрещать потенциальное training use, разрешать его полностью или позже лицензировать отдельно.

Техническая настройка robots должна следовать business policy, а не случайному списку из SEO-блога.

44. AI crawler registry внутри проекта

crawler_registry provider crawler_name purpose: SEARCH USER_FETCH TRAINING ADS OTHER robots_token official_docs_url ip_ranges_url optional desired_policy last_policy_reviewed_at last_verified_access_at

Провайдеры меняют user agents и правила. Значит crawler policy должна быть данными/конфигом с review date.

45. Quarterly crawler review

Раз в квартал или после крупного релиза поисковой/AI-системы автоматически создавать compliance task: проверить официальные bot docs, имена User-Agent, IP endpoints и влияние robots controls.

46. WAF architecture

REQUEST → CDN/WAF → known verified crawler? UA + official IP / provider verification ├─ yes → crawler policy └─ no → normal bot rules → rate limiting → origin NEVER: "contains GPTBot in User-Agent" → bypass all security

47. 403 и 429 — важные crawler incidents

OpenAI отдельно рекомендует проверять 403/429, firewall/CDN logs, bot mitigation и rate limits, если crawler не может получить страницу.

SignalЧто означает
403 verified crawlerWAF/access misconfiguration
429 occasionalRate-limit tuning
5xx crawlerOrigin reliability problem
200 but empty contentRendering/application problem
200 + correct HTMLAccess layer healthy

48. Crawler logs — отдельный data stream

crawler_access_log timestamp provider crawler verified_ip url status_code bytes duration cache_status robots_allowed request_id

Это позволит измерять фактический crawl, а не только настройки robots.txt.

49. AI/Search crawler dashboard

LAST 30 DAYS Googlebot: requests / 2xx / 3xx / 4xx / 5xx YandexBot: ... OAI-SearchBot: last crawl URLs crawled errors Claude-SearchBot: ... PerplexityBot: ... alerts: verified crawler 403 error rate > threshold no crawl activity for unexpectedly long period

50. Robots configuration test in CI

TEST URLs: /articles/example → allowed /cases/example → allowed /companies/example → allowed /admin/ → disallowed /account/ → disallowed /api/private/ → disallowed OAI-SearchBot /articles/example → allowed GPTBot /articles/example → disallowed Claude-SearchBot → allowed ClaudeBot → disallowed PerplexityBot → allowed

51. robots.txt deploy — критическое изменение

Одна ошибочная строка Disallow: / может отключить discovery всего продукта. Изменения robots.txt должны проходить code review, automated tests и monitoring.

52. Robots history

Яндекс Вебмастер хранит историю изменений robots.txt; внутри «Матчасти» тоже хранить deployment history и diff.

robots_version commit deployed_at deployed_by content_hash diff rollback_target

53. Staging

Staging должен быть закрыт от публичного indexing не только robots.txt.
staging.mathchast.com → authentication / IP access → noindex as secondary layer → robots Disallow as secondary layer Причина: staging может содержать drafts, client data, duplicate content.

54. Preview links

Client preview URL:

/preview/{signed-token} require: signed token expiration noindex not in sitemap not IndexNow not internal public links Если содержит sensitive material: authentication / stronger access

55. UTM и Clean-param

Яндекс поддерживает Clean-param в robots.txt для URL parameters, которые не меняют содержание страницы. Однако «Матчасть» уже строит canonical и tracking rules на application layer.

Не превращать Clean-param в сложную бизнес-логику. Основное решение: clean canonical URLs, direct links и минимизация параметрических crawlable pages.

56. Sitemap + IndexNow + links работают вместе

DISCOVERY REDUNDANCY internal link + sitemap + IndexNow where supported + external links + RSS later НЕ: "мы отправили IndexNow, значит internal linking не нужен"

57. RSS как дополнительный discovery channel

Google принимает RSS/Atom feed как один из sitemap-like вариантов для свежих URL, но такие feeds обычно содержат только недавний контент. Для «Матчасти» RSS полезен прежде всего как distribution interface, а XML sitemap остаётся полным inventory.

58. Publication lifecycle integration

Lifecycle stateDiscovery action
PUBLISHEDSitemap add + IndexNow submit
UPDATEDlastmod + IndexNow if significant
ARCHIVEDОбычно остаётся sitemap/indexable, если страница ценна
MOVEDOld 301, new sitemap, IndexNow old+new
REMOVEDRemove sitemap, IndexNow deleted URL, 404/410
NOINDEXRemove sitemap, allow crawl until noindex observed

59. Entity index eligibility integration

Entity V0 shell → NOINDEX → no sitemap Verified + meaningful → INDEXABLE → sitemap add → IndexNow Merged → old URL 301 → target stays sitemap → old removed from sitemap → submit changed URLs

60. Search Console / Webmaster integrations

PlatformLaunch
Google Search ConsoleОбязательно
Yandex WebmasterОбязательно
Bing Webmaster ToolsОбязательно
OpenAI-specific webmaster consoleНет предположений; использовать crawler logs + analytics + official bot controls
Perplexity/Anthropic webmaster consoleНе строить зависимость от отсутствующего/неподтверждённого продукта

61. Google crawl budget: нам пока не проблема

Google говорит, что advanced crawl-budget optimization в основном актуальна для очень больших сайтов — например, около 1 млн+ страниц с регулярными изменениями или 10 000+ URL с очень высокой ежедневной динамикой.

На MVP «Матчасти» не нужно заниматься «экономией crawl budget» как отдельным SEO-проектом. Нужно просто не создавать URL explosion, поддерживать Sitemap и стабильный сервер.

62. HTTP caching

Для больших сайтов Google рекомендует поддерживать HTTP caching и 304 Not Modified, чтобы экономить crawl resources. Это полезная хорошая практика, но не P0 SEO-задача MVP.

63. Crawl traps, которых нельзя допустить

TrapРешение
Бесконечные filtersНе делать crawlable URL graph
Calendar infinite navigationНе нужен
Search result pagesNoindex / no public discovery
Tracking parametersCanonical clean URL
Duplicate pagination routesConsistent pagination
Random AI-generated tagsНе создавать public routes автоматически

64. AI crawler access не должен обходить paid/private access

Разрешить OAI-SearchBot не означает открыть закрытый кабинет, платёжные данные или private drafts. Robots allow применяется только к реально публичному web layer.

65. Что входит в Publication Health

DISCOVERY HEALTH: HTTP 200 canonical OK robots allowed meta robots indexable sitemap membership lastmod sane IndexNow event sent structured data valid internal links present OAI-SearchBot reachable Claude-SearchBot reachable PerplexityBot reachable Googlebot reachable YandexBot reachable Bingbot reachable

66. Что измерять как факт, а что как предположение

МетрикаТип
IndexNow 200 responseФакт: submission accepted
URL in SitemapФакт
OAI-SearchBot requested URLФакт из server log
Googlebot crawled URLФакт
Page indexedObserved external state
«IndexNow ускорил indexing на 3 дня»Требует экспериментальных данных
«OAI crawl вызвал citation»Не доказывать причинность без методологии

67. Crawler policy и клиентские материалы

Клиент не может выбирать «не пускайте SearchBot только на мою статью, но всё равно продайте AI Visibility» без понимания последствий.

В коммерческой оферте указать:

68. AI crawler policy как публичный документ

/policies/ai-crawlers показывает: which crawlers allowed which training bots blocked/allowed why last updated how policy affects search visibility contact for crawler issues
Это усилит прозрачность издателя и упростит будущие изменения стратегии.

69. Change management

provider changes bot policy → research update → crawler_registry update → legal/editorial/product review → robots config PR → automated tests → deploy → verify logs → changelog

70. MVP implementation components

1. robots.txt generator/config 2. sitemap generator + sitemap index 3. IndexNow key route 4. IndexNow event queue + worker 5. Search Console / Yandex / Bing verification 6. crawler registry 7. crawler access logs 8. WAF verified-bot rules 9. publication discovery health checks 10. alerts on 403/429/5xx 11. noindex/index-state mapper 12. staging/private crawler isolation

71. P0 / P1 / P2

ПриоритетФункция
P0robots, sitemap, canonical consistency, index/noindex states, Google/Yandex/Bing Webmaster, IndexNow, OAI-SearchBot allow, staging protection
P1Anthropic/Perplexity explicit policies, verified bot WAF/IP updates, crawler dashboard
P1ChatGPT referral analytics by utm_source=chatgpt.com
P2Automated policy review, crawler-specific anomaly detection, advanced crawl-budget tooling

72. Launch robots policy — рекомендуемая версия

User-agent: * Allow: / Disallow: /admin/ Disallow: /account/ Disallow: /workspace/ Disallow: /billing/ Disallow: /checkout/ Disallow: /api/private/ Disallow: /preview/private/ User-agent: OAI-SearchBot Allow: / User-agent: GPTBot Disallow: / User-agent: Claude-SearchBot Allow: / User-agent: Claude-User Allow: / User-agent: ClaudeBot Disallow: / User-agent: PerplexityBot Allow: / User-agent: Google-Extended Allow: / Sitemap: https://mathchast.com/sitemap.xml
Перед production этот блок обязательно сверить с актуальными официальными документациями: AI crawler names и правила меняются быстрее классического robots.txt.

73. Что НЕ делать

ОшибкаПочему
User-agent: * Disallow: / случайно в productionКатастрофический discovery incident
Закрыть noindex URL robots.txtCrawler не увидит noindex
Положить drafts в sitemapПротечка/duplicate risk
Отправлять весь сайт IndexNow каждый часБессмысленно и шумно
Whitelist OAI по UA без IP verificationSpoofing risk
Блокировать все AI bots, а потом продавать AI VisibilityСтратегическое противоречие
Разрешить public crawler доступ к private cabinetSecurity failure

74. Ключевой продуктовый вывод

«Матчасть» должна управлять не «индексацией», а discoverability contract. Мы гарантируем технически правильный публичный URL, доступность для выбранных crawlers, Sitemap, timely change notification и monitoring. Мы не гарантируем, что внешняя система проиндексирует, ранжирует или процитирует страницу.
CONTROLLED: URL HTTP robots noindex canonical sitemap IndexNow submission crawler access structured data OBSERVED: crawl index impressions AI mention AI citation UNCONTROLLED: rank search selection AI answer selection

75. Решение документа

Утвердить event-driven discovery architecture. Публичный контент «Матчасти» по умолчанию открыт классическим поисковым роботам и AI-search crawlers. OpenAI: OAI-SearchBot разрешён, GPTBot на launch блокируется как отдельный training crawler. Anthropic: Claude-SearchBot и Claude-User разрешены, ClaudeBot блокируется. PerplexityBot разрешён. Googlebot остаётся открыт; Google-Extended на launch разрешён ради максимальной совместимости с Gemini grounding при осознанном принятии trade-off с training use. Sitemap строится только из canonical indexable URL. IndexNow запускается по событиям publish/update/move/delete и не позиционируется как гарантия индексации. WAF проверяет legitimate bots по официальным IP/verification mechanisms, а crawler health становится частью Publication Health.

76. Что этот документ разблокирует

Mathchast_22 crawler & discovery → Mathchast_23 content types/templates → Mathchast_24 CMS/moderation → Mathchast_26 distribution → Mathchast_27 reader product → Mathchast_32 publication health → Mathchast_33 AI visibility → Mathchast_40 technical architecture → Mathchast_42 monitoring/SLA/incidents

Источники исследования

Recommended robots.txt, training opt-out policy, Google-Extended choice, queue architecture, crawler registry, WAF workflow, monitoring fields and P0/P1/P2 priorities are product decisions «Матчасти» based on the official crawler documentation current on 02.09.2026. Because AI crawler policies change quickly, this document requires regular revalidation and must not be treated as permanent configuration without review.