WhatsApp Link Preview Bot
WhatsApp Link Preview Bot — Генерирует превью ссылок при отправке URL в чатах WhatsApp. User-Agent содержит 'A' (Android) или 'i' (iOS).
- 1 Общие сведения и назначение бота
- 2 Сигнатуры User-Agent и сетевой профиль
- 3 Создаваемая нагрузка и последствия для сайта
- 4 Влияние на поисковые позиции и рекламу
- 5 Проверка визитов бота в журналах сервера
- 6 Рекомендация по обработке трафика
- 7 Способы ручной блокировки (Nginx, .htaccess, Cloudflare)
- 8 Причины неэффективности стандартных методов
- 9 Автоматическая нейтрализация в AntiBotCore
- 10 Часто задаваемые вопросы (FAQ)
- 11 Похожие боты и краулеры
1. Общие сведения и назначение бота
WhatsApp генерирует предпросмотр ссылок прямо на устройстве пользователя (client-side), а не через централизованный сервер-краулер, как у других мессенджеров. Это означает что в логах сервера вы будете видеть запросы с User-Agent вида 'WhatsApp/2.x A' (Android) или 'WhatsApp/2.x i' (iOS) — это браузерный движок WhatsApp, загружающий страницу для предпросмотра. IP-адрес при этом совпадает с IP пользователя, отправившего ссылку, а не с серверами Meta.
Оператором и разработчиком бота выступает Meta Platforms (WhatsApp). Основная функциональная задача робота — систематический сбор данных, анализ гиперссылок и выкачивание текстовой информации со страниц сайтов. В зависимости от используемых скриптов бот может запрашивать как статические HTML-файлы, так и инициировать рендеринг тяжелых динамических страниц.
2. Сигнатуры User-Agent и сетевой профиль
В журналах веб-сервера (access.log) бот обычно идентифицирует себя следующими сигнатурами в заголовке User-Agent:
WhatsApp/2.23.24.77 A
WhatsApp/2.23.24.77 i
Mozilla/5.0 (compatible; WhatsApp/2.0; +https://www.whatsapp.com)
3. Создаваемая нагрузка и последствия для сайта
Нерегулируемая активность краулера может приводить к ощутимым проблемам как для технической инфраструктуры, так и для бизнес-показателей проекта:
- Блокировка по User-Agent 'WhatsApp' также заблокирует реальных пользователей, открывающих ссылки через WebView
- Технически невозможно отделить preview-запрос от реального пользователя, так как они исходят с одного IP
Когда робот генерирует десятки параллельных запросов в секунду, каждый такой запрос инициирует запуск интерпретатора PHP, подключение к СУБД MySQL и генерацию HTML-страницы. На виртуальных хостингах это мгновенно исчерпывает лимиты тарифного плана (CPU, оперативная память, процессы PHP-FPM), из-за чего реальные посетители сталкиваются с медленной загрузкой или ошибками 502/504 Bad Gateway.
4. Влияние на поисковые позиции и рекламу
5. Проверка визитов бота в журналах сервера
Чтобы узнать, заходит ли данный робот на ваш сайт прямо сейчас и как часто он сканирует разделы, достаточно выполнить команду в консоли веб-сервера:
grep -i 'WhatsApp/' /var/log/nginx/access.log | tail -20
Примечание: если у вас обычный виртуальный хостинг без доступа по SSH (Beget, TimeWeb, Reg.ru, cPanel), откройте панель управления, найдите раздел «Журнал посещений» (или «Свежие логи») и воспользуйтесь поиском по названию бота или строке его User-Agent.
6. Рекомендация по обработке трафика
7. Способы ручной блокировки
Если вы хотите заблокировать робота на уровне веб-сервера вручную, используйте следующие директивы конфигурации:
# НЕ блокировать! WhatsApp WebView = пользовательский браузер.
# if ($http_user_agent ~* 'WhatsApp') { return 403; } # ПЛОХО!
Директива return 444; в Nginx закрывает сетевое TCP-соединение без передачи байтов ответа, экономя оперативную память и процессор сервера.
# Не блокируйте WhatsApp в .htaccess!
# Блокировка UA 'WhatsApp' заблокирует живых пользователей,
# открывающих ваш сайт через WhatsApp
Вставьте указанный блок в начало файла .htaccess в корневой папке вашего сайта.
(http.user_agent contains "WhatsApp Link Preview Bot")
Создайте Custom Rule в панели Cloudflare: Security → WAF → Custom Rules с действием Block.
# WhatsApp не является серверным краулером — robots.txt не применим
Добавьте правило в файл robots.txt в корневом каталоге домена.
8. Причины неэффективности стандартных методов
Ограничения классических правил:
WhatsApp генерирует превью на устройстве пользователя (client-side). robots.txt не влияет на поведение WhatsApp WebView.
В реальных условиях блокировка по User-Agent и директивы robots.txt защищают сайт лишь от примитивных скриптов. Продвинутые краулеры и парсеры обходят эти фильтры за счет трех факторов:
- Подмена заголовков (спуфинг): бот отправляет User-Agent популярного десктопного браузера, из-за чего веб-сервер принимает его за обычного посетителя.
- Ротация IP-адресов: запросы распределяются через сотни тысяч резидентных и мобильных прокси, делая блокировку по статическим IP неэффективной.
- Headless-движки (Chromium, Puppeteer): эмуляторы полноценно исполняют JavaScript, проходя большинство поверхностных проверок.
9. Автоматическая нейтрализация в AntiBotCore
10. Часто задаваемые вопросы (FAQ)
11. Похожие сетевые боты и краулеры
Боты со схожим поведением или относящиеся к категории «Соцсети и медиа»:
Генерирует превью (заголовок, картинка, описание) при публикации ссылок ВКонтакте. Читает Open Graph и og:image.
Генерирует предпросмотр ссылок в чатах и каналах Telegram. Также используется Telegram Instant View для создания быстрых страниц.
Читает Twitter Cards метаданные при публикации ссылок в X/Twitter. В этот профиль также включены Facebookbot и Slackbot как аналогичные social preview боты.