Блог Яндекс.Метрики

Обновление в настройках Вебвизора (inpage-аналитика и iframe)

17 августа 2015, 12:34

Начиная с 1 октября плеер Вебвизора, а также код просмотра прочих инструментов inpage-аналитики — карт кликов, ссылок, скроллинга и аналитики форм — будет загружаться с отдельного домена webvisor.com.

Это изменение затронет те сайты, которые запрещают отображение своих страниц в iframe, используя для этого http-заголовок "X-Frame-Options: SAMEORIGIN".
Чтобы сохранилась возможность анализа таких сайтов инструментами inpage-аналитики, необходимо настроить web-сервер. Если вы используете nginx, добавьте следующие исключения в настройки сервера (для домена webvisor.com и его поддоменов, а также для домена вашего сайта):

    location / {
        set $frame_options '';
        if ($http_referer !~ '^https?:\/\/([^\/]+\.)?(yourdomain\.com|webvisor\.com)\/'){
            set $frame_options 'SAMEORIGIN';
        }
        add_header X-Frame-Options $frame_options;
        ...
    }

Если вы используете другой web-сервер, необходима аналогичная настройка, отменяющая добавление заголовка "X-Frame-Options" в случае, когда реферер соответствует регулярному выражению:

^https?:\/\/([^\/]+\.)?(yourdomain\.com|webvisor\.com)\/

Одновременно произойдёт небольшое изменение в инструментах inpage-аналитики в старой версии Метрики: для просмотра записей Вебвизора и Аналитики форм теперь будет использоваться тот же интерфейс, что и в Метрике 2.0.

Подробности о работе с технологией Вебвизор вы найдёте в помощи (https://yandex.ru/support/metrika/webvisor/activate-webvisor.xml).

32 комментария
Подписаться на комментарии к посту
Р-р-р-р...
Пользуюсь старой метрикой. И то-то я смотрю, что две недели уж вебвизор у меня не работает - не хочет грузиться webvisor.com. При клике на Плей "Воспроизвести посещение" - постоянное обновление страницы и ничего не отражается.
Яндекс, яндекс...
Екатерина (Yandex.Metrika)
15 октября 2015, 11:28

Вы прописали параметры, как указано выше, и всё равно видите постоянное обновление страницы?

Если так, то пишите на http://feedback2.yandex.ru/metrika/, будем разбираться.

Как не пытался настройть, но вэбвизор не отображает действия на сайте картридж клаб, это может как то зависить от платформы WIX?

Здравствуйте!

В данный момент при установке счетчика Метрики на сайты, созданные на конструкторе Wix, по инструкции, которая опубликована в помощи конструктора, счетчик устанавливается не в код сайта, а в код отдельной страницы, которая подгружается через iframe уже после загрузки самой страницы.В этом случае счетчик Метрики корректно работать не может. Данные по источникам трафика, записи Вебвизора недоступны. Не достигаются цели.Для решения данного вопроса рекомендуем обратиться в службу поддержки сервиса Wix.

А что тогда мой счетчик показывает?

www. taxi-abc,com  

Счетчик иногда "теряется", я в редакторе его обновляю и все работает, кроме вебвизора.

Екатерина (Yandex.Metrika)
23 декабря 2015, 12:45

Мы всячески призывает коллег из WIX активнее заниматься вопросами интеграции наших сервисов. В настоящее время корректно собирается вся статистика за исключением следующих компонент: Вебвизор, карты, Целевой звонок, мониторинг. Разработчики WIX обещают добавить эту информацию в документацию по установке счётчика Метрики, чтобы у наших общих пользователей не возникало недоразумений.

Здравствуйте. У меня код счетчика находиться в отдельном файле javascript, который подгружается на все страницы сайта - так удобнее его менять. Данные поступают отлично, статистика собирается, но не работают карты кликов и скроллинга - выдается сообщение, что "не установлен код счетчика или установлен запрет на отображение страницы во фрейме". Запрета на отображение во фрейме нет, видимо дело в том что робот не находит код на странице.

Можно ли это исправить или для использования карт придется вставлять код в HTML?

Можно ли в HTML код вставить только часть счетчика между тегами noscript, а код javascript оставить в отдельном файле?

Екатерина (Yandex.Metrika)
15 ноября 2015, 13:53

Здравствуйте.

Код счётчика в отдельном файле никак не должен влиять на те настройки, которые необходимо прописать в конфигах серверов. Очевидно, что если бы была проблема "в том что робот не находит код на странице", в отчётах бы не было никакой статистики по сайту.

Убедитесь, что в самом файле с кодом нет блока noscript. Если код корректный, заполните форму http://feedback2.yandex.ru/metrika/collectdata/other/, исследуем и поможем.

Спасибо за быстрый ответ, Екатерина. Нашел ошибку на своей сайте - в файле с кодом метрики до ее инициализации было обращение к одному из свойств window.top, поэтому при открытии в фрейме с другого домена происходила ошибка. Исправил и теперь все карты работают)))

vorfolomeev@expert-systems.com
17 ноября 2015, 14:11

 

 Здравствуйте!


У Вас в данном примере ошибка: 

if ($http_referer !~ "^https?://([^/]+\.)?rdomain.ru>|([^/]+\.)?webvisor\.com)/"){ add_header X-Frame-Options SAMEORIGIN;

 

Во-первых выражение должно закрываться фигурной скобкой, а во-вторых вместо webvisor\.com)/ должно быть webvisor\.com/, тоесть без закрывающейся круглой скобки.


Правильный вариант:


if ($http_referer !~ "^https?://([^/]+\.)?rdomain.ru>|([^/]+\.)?webvisor\.com/"){ add_header X-Frame-Options SAMEORIGIN;}


P.S. Рассматриваю предложения о работе ;-)


--

С Уважением,

Александр



 

Екатерина (Yandex.Metrika)
17 ноября 2015, 15:14

Александр, спасибо за замечания. Вы правы по обоим пунктам, исправим.
Присылайте резюме, толковые разработчики всегда нужны ;)

Можно пойти еще дальше и обойтись вообще без if в конфигурации - переписав условие использую директиву map.

map $http_referer $my_header {

"^https?://([^/]+\.)?rdomain.ru>|([^/]+\.)?webvisor\.com/" "";

default "X-Frame-Options SAMEORIGIN"

}


И в нужном месте:

add_header $my_header;


Екатерина (Yandex.Metrika)
18 ноября 2015, 12:45

Андрей, рекомендую и вам воспользоваться советом для Александра ;)

Добавил исключение для доменов Метрики в файл /usr/local/ispmgr/etc/nginx_fpm.conf

if ($http_referer !~ "^https?://([^/]+metrika.*yandex\.(ru|ua|com|com\.tr|by|kz)|([^/]+\.)?webvisor\.com)/"){

add_header X-Frame-Options SAMEORIGIN;
}

При перезагруки nginx выдает следующее

nginx: [emerg] "add_header" directive is not allowed here in /usr/local/ispmgr/etc/nginx_fpm.conf:6

И соответсвенно не устанавливается заголовок X-Frame-Options.

Екатерина (Yandex.Metrika)
18 ноября 2015, 12:42

Здравствуйте.

Вариант 1 - используйте открытые источники для устранения проблемы, описание похожей проблемы на stackoverflow

Вариант 2, если первый не поможет. Перешлите в Службу поддержки Метрики конфиги nginx http://feedback2.yandex.ru/metrika

Так ошибку не выдает но и заголовок X-Frame-Options не подставляет

...    server {
        server_name site.ru www.site.ru;
        set $socket_name unix:/tmp/php-fpm_site.sock;
        set $root_path /var/www/site/data/www/site.ru;
        include /usr/local/ispmgr/etc/nginx_fpm.conf;
        include /usr/local/ispmgr/etc/nginx.inc;
        listen ххх.ххх.ххх.ххх;
        disable_symlinks if_not_owner from=$root_path;

        location / {
            root $root_path;
            
            if ($http_referer !~ "^https?://([^/]+metrika.*yandex\.(ru|ua|com|com\.tr|by|kz)|([^/]+\.)?webvisor\.com)/"){
                add_header X-Frame-Options SAMEORIGIN;                
           }

            access_log /var/www/nginx-logs/siteisp;
            access_log /var/www/httpd-logs/site.ru.access.log ;
        }
    }...

И даже без условия if не срабатывает в location

...
location / {
            root $root_path;
            
            add_header X-Frame-Options SAMEORIGIN;

            access_log /var/www/nginx-logs/siteisp;
            access_log /var/www/httpd-logs/site.ru.access.log ;
        }
...

Срабатывает только в директиве server, но без условия if.

Если с условием, выводит вышеупомянутую ошибку

---------------------------------------

Так же заметил, что в логах сервера $http_referer везде равен '-'

Возможно в этом проблема?

Решил таким образом

location / {
     set $xframeoptions "";

     if ($http_referer !~ "^https?://([^/]+metrika.*yandex\.(ru|ua|com|com\.tr|by|kz)|([^/]+\.)?webvisor\.com)/"){
          set $xframeoptions SAMEORIGIN;           
     }
}
add_header X-Frame-Options $xframeoptions;

А имеется ли возможность решать данную проблему не трогая сервер? Например, на битриксе, имеется модуль защиты от отображения сайта во фрейме. Но следующий код не работает:

$metrika_str = preg_match("^https?://([^/]+metrika.*yandex\.(ru|ua|com|com\.tr|by|kz)|([^/]+\.)?webvisor\.com)/", $_SERVER['HTTP_REFERER']) ;
if(!$metrika_str){
    header('X-Frame-Options:Sameorigin') ;
}
Екатерина (Yandex.Metrika)
23 ноября 2015, 11:21

Здравствуйте.

Зависит от настроек конкретного модуля. Например, вот стандартный способ работы с фреймами в Битриксе, в котором задача решается использованием регулярных выражений (через добавление нужных доменов в Исключения). http://dev.1c-bitrix.ru/user_help/settings/security/security_frame.php

Вопросы такого плана рекомендую решать с разработчиками конкретной CRM.

Спасибо! Правда все решилось куда проще, через другой заголовок, который устанавливается вместо X-frame-options в модуль защиты.

Старый интерфейс меня устраивал и работал без дополнительных настроек web-сервера, который при этом оказывается еще и не сразу правильно работает. Зачем вы заставляете клиентов выполнять дополнительную работу? По-моему клиенты платят за Директ-рекламу не для того, чтобы ломать голову над неожиданно появившейся задачей, которую нам предлагают решить. Следующим вашим шагом будет видимо предложение сделать что-нибудь для нас за дополнительные деньги? С уважением.

Екатерина (Yandex.Metrika)
5 декабря 2015, 10:25

Здравствуйте.

Конечно, старые технологии удобнее, мы все привыкли к ним и изучили, как ими пользоваться. Но реалии жизни таковы, что сеть - живой организм, в котором постоянно появляются новые стандарты (речь как про стандарты безопасности, так и про продуктовые требования к системе аналитики).

Поэтому мы и делаем новую Метрику, и переводим уже существующие её возможности на новые стандарты. Всё для того, чтобы у вас было больше возмоэжностей, без которых завтра вы уже не смогли бы делать аналитику должного уровня, а также работаем над безопасностью передаваемых данных. Чтобы любая передаваемая вами информация была строго конфиденциальна.

При этом мы понимаем, что эти нововведения вызывают недовольство наших пользователей. Поэтому мы стараемся отвечать на все ваши вопросы, проводить обучение, идти на диалог в клубе или блоге.

Добрый день. Вопрос не о внедрении новых технологий. Ими мы постоянно учимся пользоваться. Но пользоваться - это одно, а писать коды, для того, чтобы пользоваться новым интерфейсом вместо старого - это совсем другое. Сделали новую метрику - она должна работать без настроек со стороны клиента, вот в чем дело. Сколько времени будет действовать старый интерфейс и каким стандартам конкретно он перестал соответствовать? С уважением.

Евгений Куршев (Яндекс)
7 декабря 2015, 17:50

Скажите, вы на своём сайте используете заголовок X-Frame-Options? Если да - из каких соображений?

Здравствуйте!
Перестал грузиться старый вебвизор.
Маленькая просьба - верните, пожалуйста, старый вебвизор.
Новый вебвизор очень неудобный в работе. Нет общей нумерации, невозможно посмотреть все посещения за сутки.
Просьба - верните старый вебвизор, если не сложно.
paid111,
присоединяюсь! сделали так что пользоваться стало невозможно, развивайте! но за чем старый убивать?
Здравствуйте!

Подскажите, пожалуйста, почему из Вебвизора нельзя сохранить данные в формате xls? Мне почему-то предлагается только формат pdf. Из стандартных отчетов отлично экспортируется в любом из форматов: pdf, xls, csv. Хотелось бы и из Вебвизора сохранять данные сразу в xls для дальнейшей обработки.
На сайте 1500-2000 заходов в сутки и если нужно посмотреть вечером заходы, которые были утром, то это просто караул =)
Сначало нужно занудно и долго кликать на "показать еще 50", а когда уже подбираешься к нужным строкам, то все настолько сильно начинает тормозить и тупить, что просто уже этот Вебвизор нафиг не нужен.

Сделайте, плз, в настройках Вебвизора возможность переключения на классическую пагинацию.
Скажите, за что вы решили наказать пользователей новым интерфейсом яндекс метрики? Это же какой-то ужас, как там вообще можно что-то найти и в чем его полезность?
От всех только и слышно, что старый интерфейс гораздо лучше.
Умоляю, услышьте пользователей....
вчера создал пробные версии счетчиков сайтов reps.ru и goodgame.ru. Никаких подсчетов в любой промежуток времени, ничего не работает, всё по нулям. Не пойму что я сделал не так. Подскажите, пожалуйста. Могу скриншот выслать.
Яндекс Василиса
2 мая 2016, 13:45
murat-mukanov,
пожалуйста, отправьте ваш вопрос в службу поддержки
Подскажите пожалуйста как правильно составить  код для OpenCarta 2