Проверьте, восстанавливается ли страница при возврате назад. Узнайте, какие ограничения браузера мешают вернуться к просмотру без полной загрузки.
Причины блокировки
Почему возврат на страницу требует загрузки
У BFCache редко бывает одна универсальная причина. Отчёт разделяет серверные заголовки, браузерные ограничения и фронтенд-код, чтобы правка не превращалась в гадание.
жизненный цикл скриптов
unload и beforeunload
Обработчик unload или другое зафиксированное ограничение жизненного цикла может мешать восстановлению. Найдите обработчик и выясните его назначение перед изменением. После исправления снова перейдите на другую страницу и вернитесь назад.
заголовки ответа
Cache-Control: no-store
Проверяйте настройки ответа по причине, зафиксированной браузером. Cache-Control: no-store не является безусловным запретом в современном Chrome. Сохраняйте защиту конфиденциальных страниц и повторяйте реальный переход после изменения.
состояние выполнения
JS-состояние и соединения
WebSocket, IndexedDB-транзакции, таймеры и состояние SPA могут мешать восстановлению. Milten проверяет, что происходит при уходе со страницы и возврате через pageshow.
FAQ
Частые вопросы о Back/Forward Cache
Коротко о том, что такое BFCache, почему он выключается и как безопасно исправлять блокеры.
Что такое Back/Forward Cache?
BFCache сохраняет полный снимок страницы в памяти браузера. Когда пользователь нажимает «Назад» или «Вперёд», страница может появиться сразу, без повторной загрузки HTML, ресурсов и повторного рендера.
Почему страница не попадает в BFCache?
Смотрите причины, записанные проверяемым браузером: обработчики жизненного цикла, открытые ресурсы и настройки ответа могут влиять на восстановление. Правила зависят от браузера и состояния. В современном Chrome no-store и beforeunload сами по себе не являются безусловными блокировщиками.
Как BFCache связан с Core Web Vitals?
Возврат из BFCache обычно ощущается мгновенным: браузер показывает уже готовое состояние страницы. Это снижает количество повторных загрузок и улучшает пользовательский опыт на навигации назад/вперёд.
Можно ли убрать unload и не потерять аналитику?
Перед удалением unload выясните, какие события от него зависят. По задаче могут подойти изменение видимости, pagehide или sendBeacon, но доставку нужно проверить. Проверьте обычную загрузку и возврат из BFCache без двойного учёта одного посещения.
Нужно проверять каждую страницу сайта?
Для начала достаточно проверить ключевые шаблоны: главную, каталог, карточку товара, статью, личный кабинет или checkout. Если блокер сидит в общем layout, он проявится сразу на нескольких типах страниц.
Проверьте Back/Forward Cache по воспроизводимому сценарию. Разберите причины отказа и убедитесь в корректности состояния страницы после возвращения.
Cookies
Мы используем Cookies
Мы используем куки, чтобы обеспечить вам лучший опыт на нашем сайте. Подробнее о том, как мы используем cookies, вы можете узнать в нашей политике конфиденциальности.