Когда пользователь нажимает кнопку «Назад» в браузере, он ожидает вернуться на предыдущую страницу. Если вместо этого открывается рекламный блок или промежуточный экран, навигация превращается в раздражающий квест, а доверие к сайту падает.
Техника, при которой сайт добавляет лишние записи в историю браузера, скрытно перенаправляет пользователя или перехватывает событие popstate, называется back button hijacking. Чаще всего она реализуется через:
- мгновенные редиректы, оставляющие промежуточные URL в истории;
- вызовы
history.pushState()без реального действия пользователя; - обработчики
popstateилиbeforeunload, которые заменяют стандартный переход на рекламный контент; - SPA‑роутеры, создающие записи в истории без явного клика.
Новое положение Google
13 апреля 2026 года Google официально включил перехват кнопки «Назад» в перечень нарушений политики «malicious practices». С 15 июня 2026 г. такие страницы могут получить ручные санкции от команды Search Quality или автоматическое понижение в результатах поиска. Ответственность возлагается на владелец сайта, даже если нарушающий код пришёл от рекламной сети или стороннего SDK.
Как проверить сайт на наличие перехвата
- Откройте страницу в Chrome, запустите Performance → Recording в DevTools, нажмите кнопку «Назад». Если в сети появляются запросы к дополнительным URL или адресная строка «перепрыгивает», значит в истории присутствуют лишние записи.
- В консоли выполните
history.lengthсразу после загрузки и после попытки вернуться назад. Разница в значении указывает на скрытые переходы. - Поиск по коду: найдите все вызовы
history.pushStateиhistory.replaceState. Убедитесь, что они вызываются только в ответ на пользовательский клик, а не автоматически при загрузке. - Проверьте наличие обработчиков
popstate,beforeunloadиonbeforeunload. Если их цель — задержать уход пользователя, удалите или замените их на нейтральные сообщения. - Тестируйте рекламные креативы, включив в страницу реальные рекламные блоки. Если после их загрузки появляется дополнительный переход при нажатии «Назад», провайдер кода нарушает правила.
Шаги к очистке истории
- Уберите все автоматические редиректы, которые оставляют промежуточные URL. При необходимости замените их на серверный 301/302, который не попадает в историю.
- Перепишите SPA‑роутинг: используйте
history.replaceStateдля внутренних переходов, если не требуется сохранять запись в истории. - Удалите или замените сторонние скрипты, добавляющие записи в историю без согласия пользователя. При работе с рекламными сетями требуйте подтверждения отсутствия подобных функций.
- После внесения изменений проведите повторный аудит с теми же инструментами. Достигнув одинакового значения
history.lengthдо и после нажатия «Назад», можно считать проблему решённой. - Если уже получена ручная санкция, отправьте запрос на пересмотр в Search Console, приложив отчёт о проведённом аудите и подтверждение исправлений.
С 15 июня 2026 года любой сайт, оставляющий пользователю ложное ощущение работы кнопки «Назад», рискует потерять позиции в поиске. Прозрачный аудит кода и удаление сторонних скриптов, манипулирующих историей, позволяют избежать как автоматических, так и ручных штрафов.