«Вебвізор» – це один з інструментів яндекс метрики, що дозволяє вивчати поведінку користувача на сайті за допомогою анимирования дій користувача, на сторінках де встановлений лічильник. На даний момент часу дана система використовує фрейми, з якими в деяких випадках можуть виникати проблеми. Проблема полягає в наступному: вебвізор перестає працювати в метриці, а при спробі перегляду запису поведінки користувача, може з’являтися помилка з текстом — «На сторінці не знайдений код лічильника або встановлено заборону на відображення сторінки у фреймі». Щоб вирішити цю проблему потрібно виконати трохи маніпуляцій, щоб визначити, в чому полягає проблема, а проблема може бути в кількох місцях.

Перевіряємо, чи підключений лічильник
Можливо, з якихось причин коду лічильника не виявилося на сторінках вашого сайту, тому потрібно почати з самого банального – перевірити наявність підключеного лічильника на ваших сторінках. Відкриваємо вихідний код, і дивимося, чи підключений код лічильника.

Перевіряємо, чи немає проблем на вашій стороні
Буває, що проблема може перебувати на боці клієнтської частини, наприклад, блокуватися доповненнями браузера антивірусом, і іншими програмами. Перевіряємо доступ до metrika.yandex.ru, mc.yandex.ru, *.yandex.net буває, що доступ можуть прикривати фаєрволи на рівні корпоративної мережі, цей момент так само слід враховувати.

Перевіряємо, чи немає заборони на стороні сервера
З міркувань безпеки на багатьох веб-серверах блокується можливість відображення сторінок сайту у фреймах. Прибирати захист вкрай не рекомендується, і в якості рішення можна залишити можливість використання фреймів лише для яндекс метрики, і про це ми поговоримо далі.

Як зрозуміти, блокує фрейми сервер чи ні?
Щоб дізнатися чи є заборона на стороні веб-сервера нам необхідно переглянути заголовки відповіді вашого сайту. Переглянути заголовки відповіді ви можете відкривши консоль розробника в браузері (Ctrl+F12), або за допомогою будь-якого онлайн-сервісу, наприклад цей.

Після появи заголовків відповіді, нас цікавить наявність рядки:
X-Frame-Options: SAMEORIGIN

Дана рядок позначає те, що показ у фреймах дозволяється лише з поточного хоста, а значить, з будь-яких інших це зробити не можна, і вебвізор в цьому випадку потрапляє під заборону. Як правило, подібні заголовки відправляє веб-сервер, і нам належить зробити невеликий виняток показу на кадрах для яндекс метрики. Більшість веб-серверів працюють на Nginx, з цієї причини підправимо трохи налаштування для віртуального хосту.

Дозволяємо веб-візор в Nginx
Так як Nginx вже відправляє заголовок для всіх віртуальних хостів, нам необхідно знайти конфігураційний файл, звідки цей заголовок підключається. За замовчуванням в системі Linux конфігураційні файли розташовуються в директорії /etc/nginx/, і імена файлів закінчуються на *.conf. Вам доведеться знайти файл, в якому прописуються заголовок, а так само закоментувати його:

# add_header X-Frame-Options SAMEORIGIN;

Після цього в налаштуваннях віртуального хосту прописати невелике правило, яке буде забороняти всі спроби використання фреймів на сторонніх доменах крім доменного імені *.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;

}

Зверніть увагу, що виключення додається субдомен, там, де вказано yourdomain.com – ви прописуєте свій. Після внесень змін в конфігураційний файл, необхідно перезапустити Nginx, щоб настройки вступили в силу. При використанні інших серверів, їх так само слід налаштувати таким чином, щоб заголовок X-Frame-Options не відправлявся для вебвизора.
Якщо ви робите відправку заголовків через скрипти, то ви можете скористатися регулярним виразом для перевірки:

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

Таким чином, можливість використання вебвизора збережеться для вашого сайту, і не доведеться має наміру залишати цю частину не захищеною.

Додав: htmaker, 22.08.2017 р.
(Ще не оцінили)

Завантаження…

Діліться з друзями:

См. також:


Конвертація htaccess в Nginx
Рубрика: Nginx

Настроювання заголовків Expires в Nginx
Рубрика: Nginx

Блокування ботів в Nginx
Рубрика: Nginx, Інф. безпека

Ставимо nginx останньої версії Linux
Рубрика: Linux, Nginx