Невозможно воспроизвести посещение на данной странице. Возможные причины ошибки в Вебвизоре Яндекса
Невозможно воспроизвести посещение на данной странице. Возможные причины ошибки в Вебвизоре Яндекса
Иногда может возникнуть ситуация, когда не работает вебвизор в метрике. При попытке просмотреть запись посещения выскакивает сообщение об ошибке примерно с таким текстом:
Невозможно воспроизвести посещение на данной странице. Возможные причины:
- Не установлен код счётчика
- Установлен запрет на отображение страницы во фрейме
Сначала вообще проверим, включен ли у нас вебвизор в настройках счетчика. Быстро проверить это можно перейдя в режим просмотра кода (Ctrl+U). Ищем там код метрики и вызов вебвизора, а именно строку webvisor:true.
Если вебвизор не воспроизводит, но код на странице есть, тогда у нас осталось несколько вариантов:
- блокировка со стороны клиентского браузера
- блокировка со стороны сервера (пресловутый запрет на показ страницы во фрейме)
Вариант 1. Не работает вебвизор в метрике по причине блокировки клиентом
Доступ к ним может быть закрыт антивирусом, фаерволом или на уровне корпоративной сети. Добавьте эти адреса в список доверенных и проверьте, осталась ли проблема.
Если проблема осталась, то попробуйте зайти с «чистого» браузера, где нет плагинов (особенно блокировщиков рекламы и антивирусных аддонов).
Этот подход в большинсве случаев решает проблему воспроизведения в вебвизоре на уровне клиента.
Вариант 2. Установлен запрет на отображение страницы во фрейме
Тут всё немного сложнее. Но определить ошибку достаточно просто. Для этого в Яндекс Метрике:
- Откройте страницу вебвизора или карт, нажмите F12 (должны открыться инструменты разработчика);
- Выберите вкладку «консоль»;
- Перезагрузите страницу;
- В списке ошибок вы увидите строку, подсвеченную красным, где будет написано про возникшую проблему.
Если стоит блокировка показа сайта во фрейме, то в консоли вы увидите строчку X-Frame-Options: SAMEORIGIN, которая говорит, что данный сайт:
- можно показывать во фреймах текущего хоста,
- нельзя с любых других хостов.
Сейчас идет активная работа над внедрением разрешения показов в ифреймах выбранного хоста, но пока это решение браузерами не поддерживается.
Убрать этот запрет — значит осознанно внести на сайт уязвимость.
Поэтому каждый разработчик использует на свой страх и риск.
Чтобы убедиться, что на сайте действительно стоит запрет, и по этой причине не работает вебвизор в яндекс метрике, можно еще проверить ответ сервера в любом доступном сервисе, например здесь. Вводим адрес нашей страницы и получаем такой результат:
Мы видим эту строчку, значит причина найдена!
Как снять запрет показа страницы во фрейме?
Тут тоже может быть несколько вариантов. Запрет может стоять на уровне:
- конфигурации сервера. Если у вас виртуальный хостинг, то без помощи техподдержки проблему не решить.
- файла htaccess. Этот конфигурационный файл находится в корневой директории. Открываете его и удаляете нужную строчку.
- скрипта. Многие CMS зашивают отправку данного заголовка в свои библиотеки безопасности, и вычислить их бывает достаточно сложно.
Например, в WordPress базовая защита стоит на уровне скрипта (wp-includes/functions.php). Или она может вызываться через плагин безопасности (известно, что плагин Security Pack может давать такой эффект).
Но и тут нет ничего сложного. Нужно просто пробежаться по файлам системы управления и поиском по фразе найти нужные файлы, из которых вырезать (или закомментить нужную строку). Нужная строка, это: header(«X-Frame-Options:sameorigin»);
Как убрать запрет в CMS Drupal?
В друпале начиная с версий 7.50 заголовок X-Frame-Options: SAMEORIGIN внедрен как система безопасности на уровне ядра по умолчанию. И это правильно! Но все же если вам нужно его отключить, советую воспользоваться самым простым на мой взгляд способом. Для этого переходим в /sites/default/setting.php, и в любом удобном месте (советую в самом конце) вставляем следующий код:
/* Устанавливаем разрешение на показ сайта в Iframe*/ $conf['x_frame_options'] = 'FALSE';
После этого снова проверяем ответ сервера, и теперь мы должны получить следующее:
Также для для управления заголовком X-Frame-Options для Друпал уже создан модуль Panels HTTP Response Header Pane, но как по мне проще прописать одну строку в файле конфигурации чем устанавливать несколько модулей для решения одной задачи.