Аудит / Pro-аудит

Pro SEO — форумы & GEO 2026

AI-боты · заголовки безопасности · цепочки редиректов · дубли шаблонов · roadmap

Экспорт MD

🤖 Матрица AI-ботов

Perplexity, Claude, GPT, Google-Extended, Applebot — robots.txt

БотСтатусНазначение
Запусти Pro-аудит

🔒 Заголовки безопасности

HSTS, CSP, X-Frame-Options — оценка securityheaders.com

🔀 Цепочки редиректов

Правило: ≤2 перехода, без петель, 301 для постоянных

📋 Дубли шаблонов

Скан нескольких страниц — массовые дубли title/description

🎯 Roadmap по приоритетам

P0 срочно → P3 полировка · из 145 критериев чеклиста

Приор.#БлокПроблемаДоказательство
P0 001 A Целевой URL отдаёт HTTP 200 (не 404/410/5xx) HTTP 403
P0 005 A Canonical указывает на ту же пару и язык (не другую пару) Нет canonical
P0 013 A Контент SSR/пререндер — в HTML есть H1 и основной текст (не пустой shell) H1 отсутствует — возможен пустой shell
P0 021 B meta title [`meta_title`] не пустой на indexable URL Title пустой
P0 028 B Description не содержит body-copy (>300 символов = fail) Нет description
P0 036 C H1 [`title`] присутствует (ровно один видимый H1) Найдено H1: 0
P0 037 C H1 содержит полные имена монет: `Bitcoin (BTC) to Monero (XMR)` Нет H1
P0 101 N SSR/SSG: в view-source есть осмысленный текст (>150 символов), не пустой shell Мало текста: 0 chars — возможен CSR shell
P0 103 N H1 в исходном HTML — не только после гидрации JS H1 отсутствует в исходном HTML
P0 104 N `<title>` в исходном HTML — useHead/useSeoMeta отработал на сервере Title отсутствует в SSR HTML
P0 109 N Нет паттерна пустого `#__nuxt`/`#app` (<200 символов видимого текста) Пустой #__nuxt shell: 0 chars
P0 119 N Нет `data-server-rendered="true"` missing + empty body (CSR-only mode) Признаки CSR-only: пустой body без SSR marker
P0 129 J Strict-Transport-Security (HSTS) в ответе сервера Нет Strict-Transport-Security
P2 002 A Final URL после редиректов совпадает с canonical (нет лишних hop) Canonical отсутствует — нельзя сверить final URL
P2 064 D Комиссии в тексте: Fixed 1% / Floating 0.5% — без выдуманных цифр Fee не найдены в тексте
P2 102 N Payload __NUXT__ / __NUXT_DATA__ / `window.__NUXT__` в HTML (Nuxt 3) Payload __NUXT__ не найден — возможен static generate или CSR
P1 004 A Canonical присутствует и self-referencing Canonical не найден
P1 009 A robots.txt доступен (200) и не содержит `Disallow: /` robots.txt недоступен
P1 010 A Sitemap указан в robots.txt (`Sitemap:` directive) Нет Sitemap: в robots.txt
P1 011 A sitemap.xml доступен (200), валидный XML sitemap недоступен
P1 014 A Viewport meta для mobile (`width=device-width`) Нет viewport meta
P1 022 B Длина meta title 45–65 символов (warn вне диапазона) Нет title
P1 026 B meta description присутствует meta description отсутствует
P1 027 B Длина description 120–170 символов Нет description
P1 091 G hreflang теги присутствуют для языковых версий hreflang отсутствует
P1 105 N meta description в исходном HTML (не client-only) meta description только client-side?
P1 107 N `/_nuxt/` assets — главный JS-бандл отдаёт 200 (не 404) Не найден /_nuxt/*.js в HTML
P1 130 J X-Content-Type-Options: nosniff Нет X-Content-Type-Options: nosniff
P1 144 K Self-referencing canonical (не chain на другой URL) Нет canonical
P2 041 C Блок How-to (`exchange_pair_section1_title`) — заголовок есть Блок не обнаружен по тексту
P2 042 C how_step1–4 — все 4 шага заполнены, без template leak Мало how-step контента
P2 049 C FAQ — минимум 3–5 вопросов видимы FAQ блок слабо выражен
P2 051 C about_section — заголовок + subtitle про обе монеты About block не найден
P2 092 G x-default hreflang задан Нет x-default
P2 106 N canonical в исходном HTML canonical не в initial HTML
P2 110 N OG-теги в исходном HTML (не только после Vue mount) OG только после гидрации
P2 117 N preload критичных шрифтов или CSS (не всё через JS) Нет preload критичных ресурсов
P2 125 I Google-Extended / GoogleOther — training vs search разделены Google-Extended=allowed, GoogleOther=allowed — проверь training policy
P2 127 I FAQPage schema на money/pillar страницах Нет FAQPage schema — AI engines хуже извлекают Q&A
P2 108 N `html lang="..."` задан и соответствует локали URL html lang не задан