Добавьте в имена стилевых файлов хеш от содержимого
Примечание. Вебвизор может отключиться, если вы не просматривали записи в течение последних 6 месяцев. Чтобы возобновить запись визитов, включите опцию снова.
Настройка записи контента сайта
Вы можете управлять записью содержимого сайта:
Настройка записи других элементов сайта
По умолчанию Вебвизор записывает все содержимое страниц сайта, кроме полей, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Вы можете влиять на запись контента сайта с помощью CSS-классов (атрибут class). Например, запретить запись содержимого окна чата. Правила, определенные для класса, срабатывают для самого элемента и всех дочерних элементов, если не указано другое.
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Задайте CSS-класс ym-hide-content для элемента, содержимое которого не нужно записывать.
Вебвизор будет записывать все элементы сайта, кроме тех, которые отмечены CSS-классом ym-hide-content . Если классом отмечен графический блок, то он заменится на серый блок, если классом отмечен текст, он заменится на произвольный набор символов и будет отображаться размытым.
Разрешить запись отдельного элемента, размещенного внутри элемента, скрытого с помощью ym-hide-content
Например, так вы можете управлять записью блока с отзывами на сайте: скрыть имя пользователя и аватар, но записать текст отзыва. В результате аватар заменится на серый блок, имя пользователя заменится на произвольный набор символов и будет размытым, а текст отзыва запишется так, как видел его посетитель сайта во время визита.
Например, для блока отзывов задан CSS-класс ym-hide-content , внутри этого блока находится форма для ввода отзыва. В этом случае Вебвизор не запишет блок отзывов, а содержимое полей заменится на звездочки.
Чтобы Вебвизор записал содержимое поля, задайте для него CSS-класс ym-show-content . Если во время записи визита Метрика распознает поле как конфиденциальное, то его содержимое заменится на звездочки.
Если вы задали для поля, расположенного внутри скрытого элемента, CSS-класс ym-record-keys , то содержимое поля также заменится на звездочки.
Поддержка устаревшего кода счетчика По умолчанию Яндекс Метрика использует новый код счетчика. Чтобы работать с Вебвизором 2.0, замените на всех страницах сайта код на новый. Найти его можно на странице Настройка . Если на сайте установлен старый код и вы хотите использовать Вебвизор 1.0, включите опцию Устаревший код счетчика. Лимит на период хранения записей Данные хранятся 15 дней, включая текущий день . Лимит на количество записей в день Вебвизор записывает до 150 000 посещений в день с некоторой погрешностью. Система обеспечивает репрезентативность выборки, записывая посещения равномерно в течение суток. Использование Вебвизора 2.0, если на сайте установлено несколько счетчиков В этом случае включите Вебвизор 2.0 только на одном из установленных счетчиков. Если Вебвизор 2.0 подключен ко всем счетчикам, данные запишет тот счетчик, который инициализирован на сайте первым. Рекомендуемая кодировка на сайте Вебвизор корректно записывает действия посетителей, если на сайте используется кодировка UTF-8. Корректная HTML-верстка страниц Вебвизор может неточно воспроизводить посещения на страницах с большим количеством дефектов HTML-верстки (незакрытые теги, неправильная вложенность тегов и т. п.). Как правило, Вебвизор адаптируется к таким дефектам, но все-таки желательно, чтобы у страниц сайта была правильная HTML-структура. Запись страниц с резиновой версткой Для страниц с резиновой версткой посещение будет воспроизведено корректно, даже если разрешения экрана при записи и воспроизведении не совпадают. При воспроизведении возможны небольшие скачки курсора — из-за неодинакового взаимного расположения элементов контента на записываемой и воспроизводимой страницах. Использование Вебвизора 2.0 при часто обновляющихся файлах CSS
Если на вашем сайте часто обновляются CSS, добавьте в имена стилевых файлов хеш от содержимого. Тогда при изменении содержимого файла изменится его имя, например style.390b32d4d49d5e7d.css будет изменено на style.0c573d460df87d4de5a4.css . Это позволит Вебвизору при записи визита использовать именно тот стиль, который видит посетитель сайта.
Поддержка страниц с canvas Вебвизор не записывает содержимое сайта, если оно отображается с помощью элемента canvas. Запись видео- и аудио-контента Вебвизор не записывает содержимое HTML-элементов audio и video и взаимодействие с ним посетителя, если внутри этих элементов изменяются объекты Audio и Video . Запись Flash-контента Вебвизор записывает Flash-контент сайта, но не воспроизводит взаимодействие посетителя с таким содержимым. Поддержка Shadow DOM
Вебвизор не поддерживает технологии Shadow DOM.
Вебвизор записывает посещения в большинстве современных браузеров для компьютера: Яндекс Браузер, Google Chrome, Firefox, Safari, Opera, Microsoft Edge. Ограниченно поддерживается запись в бета-версиях и некоторых мобильных браузерах. Также ограниченно могут записываться и воспроизводиться посещения в любой версии Internet Explorer.
Разные браузеры могут обрабатывать одну и ту же страницу по-разному. Поэтому чтобы наиболее точно воспроизвести посещение, используйте тот же браузер, в котором оно изначально было записано.
Если на сайте используются рантайм-стили (в том числе из серии Data Styled Components), то Вебвизор не запишет или запишет некорректно визиты. Рекомендуем использовать классические стили.
Обработка медиафайлов WebP
Вебвизор не имеет возможности обрабатывать медиафайлы формата WebP.
Запись вкладок браузера в приватном режиме Вебвизор может некорректно записывать информацию о вкладках в приватном режиме браузера (например, Инкогнито в Яндекс Браузере). Запись страниц с ошибками в верстке Вебвизор может неточно записывать посещения на страницах с версткой, не соответствующей стандартам W3C. Запись содержимого iframe с другого домена Чтобы Вебвизор записал содержимое iframe, адрес которого отличается от адреса сайта, настройте счетчик особым образом. Обработка медиа-запросов Метрика может некорректно обработать некоторые медиа-запросы.
Примечание. Вебвизор может отключиться, если вы не просматривали записи в течение последних 6 месяцев. Чтобы возобновить запись визитов, включите опцию снова.
Превентивное кэширование
Многие устройства работают в двух режимах: когда интернет условно-безлимитен (например, мобильный телефон в вай-фай сети) и когда интернет ограничен (лимит по трафику или узкий канал). Браузер или расширение к нему может, пользуясь безлимитным подключением, заранее скачивать популярные библиотеки (наподобие jQuery и плагинов к ней), также по мере необходимости их обновлять. Это ли не мечта многих, чтобы jQuery была включена в браузер?
Выдвигаемое рацпредложение актуально, так как борьба за оптимизацию загрузки сайтов идёт полным ходом. Более всего выиграют малые и средние сайты за счёт разделяемых библиотек (и, может быть, некоторых часто используемых изображений) в кэше. Уменьшится потребление трафика мобильными устройствами, что важно с учётом ограниченной пропускной способности каналов сотового интернета. Крупные сайты также могут уменьшить нагрузку на свои серверы в случае, если будут внедрены mesh-технологии.
Таким образом, поддержка предлагаемой технологии выгодна и вебмастерам, чьи сайты будут грузиться быстрее, и производителям браузеров, которые тоже будут быстрее отображать страницы, и провайдерам, у которых уменьшится потребление полосы (пусть и не столь значительно, но от провайдеров активных действий и не требуется).
P.S.
Мне было бы очень приятно услышать мнение Mithgol, Shpankov и BarakAdama.
P.P.S.
Хабр всезнающий, в какое спортлото отправлять рацпредложение?
Какие проблемы это решает?
Настройка записи других элементов сайта
По умолчанию Вебвизор записывает все содержимое страниц сайта, кроме полей, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Вы можете влиять на запись контента сайта с помощью CSS-классов (атрибут class). Например, запретить запись содержимого окна чата. Правила, определенные для класса, срабатывают для самого элемента и всех дочерних элементов, если не указано другое.
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Задайте CSS-класс ym-hide-content для элемента, содержимое которого не нужно записывать.
Вебвизор будет записывать все элементы сайта, кроме тех, которые отмечены CSS-классом ym-hide-content . Если классом отмечен графический блок, то он заменится на серый блок, если классом отмечен текст, он заменится на произвольный набор символов и будет отображаться размытым.
Разрешить запись отдельного элемента, размещенного внутри элемента, скрытого с помощью ym-hide-content
Например, так вы можете управлять записью блока с отзывами на сайте: скрыть имя пользователя и аватар, но записать текст отзыва. В результате аватар заменится на серый блок, имя пользователя заменится на произвольный набор символов и будет размытым, а текст отзыва запишется так, как видел его посетитель сайта во время визита.
Например, для блока отзывов задан CSS-класс ym-hide-content , внутри этого блока находится форма для ввода отзыва. В этом случае Вебвизор не запишет блок отзывов, а содержимое полей заменится на звездочки.
Чтобы Вебвизор записал содержимое поля, задайте для него CSS-класс ym-show-content . Если во время записи визита Метрика распознает поле как конфиденциальное, то его содержимое заменится на звездочки.
Если вы задали для поля, расположенного внутри скрытого элемента, CSS-класс ym-record-keys , то содержимое поля также заменится на звездочки.
Выберите вопрос, чтобы найти решение.
Содержимое страницы в записи может отличаться от реального. Вероятно, на сайте часто меняются CSS. В этом случае добавьте в имена стилевых файлов хеш от содержимого. Тогда при изменении содержимого файла изменится его имя, например style.390b32d4d49d5e7d.css будет изменено на style.0c573d460df87d4de5a4.css . Это позволит Вебвизору при записи визита использовать именно тот стиль, который видит посетитель сайта.
Выполните следующие действия:
Проверьте настройки файрвола — возможно, они блокируют работу скрипта счетчика Метрики. Также счетчик может быть заблокирован расширением Adblock Plus .
Обратите внимание: служба поддержки не обзванивает\\n пользователей. Не следуйте указаниям людей, которые вам звонят и представляются службой\\n поддержки Яндекс Метрики.
Обратите внимание: служба поддержки не обзванивает пользователей. Не следуйте указаниям людей, которые вам звонят и представляются службой поддержки Яндекс Метрики.
Обратите внимание: служба поддержки не обзванивает пользователей. Не следуйте указаниям людей, которые вам звонят и представляются службой поддержки Яндекс Метрики.
Если у вас остались вопросы по работе Вебвизора, задайте их через форму ниже — укажите пример посещения, в котором некорректно отображаются данные и полную версию вашего браузера.
Поведение при несовпадении
Возможна ситуация, когда хэш полученного файла не совпал с требуемым. В таком случае разумно бы было предусмотреть мета-тэги, указывающие браузеру, следует ли такой файл использовать (по умолчанию — нет) и следует ли сообщить об инциденте серверу (по умолчанию — нет).
Косвенное определение истории по времени загрузки статики
Файлы-альтернативы
В некоторых случаях можно использовать любой из нескольких файлов с разными хэшами. Например, на сайте используется минифицированная jQuery, но если в кэше браузера есть неминифицированная — что мешает использовать её?
Обещанный няш-меш
Зная хэш требуемого вспомогательно файла, можно почти смело запрашивать его у кого угодно; основная опасность: если опрашиваемый узел действительно имеет требуемый файл, то он знает его содержимое и, скорее всего, как минимум один URI-адрес, по которому требуемый файл может (или мог) быть получен. Имеем два варианта использования предлагаемой технологии с учётом этой угрозы с целью плавного подхода к няш-меш сети:
Настройка записи полей для ввода данных
Вебвизор записывает действия посетителей на сайте, в том числе заполнение полей, например заполнение формы. При этом Яндекс Метрика распознает поля, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Содержимое таких полей автоматически заменяется на звездочки.
Если вы не хотите, чтобы Вебвизор записывал содержимое полей, отключите опцию Записывать все поля на странице Настройка , на вкладке Вебвизор . После этого содержимое всех полей заменится на звездочки.
Также вы можете влиять на запись полей с помощью CSS-классов (атрибут class).
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Вебвизор будет записывать поля, отмеченные CSS-классом ym-record-keys , кроме полей для ввода пароля. Содержимое полей, не отмеченных CSS-классом ym-record-keys заменится на звездочки.
Содержимое отмеченных CSS-классом ym-disable-keys полей заменится на звездочки.
Кроме этого, вы можете настраивать запись содержимого полей внутри скрытых от записи элементов сайта.
Анонимный разделяемый кэш
Настройка записи полей для ввода данных
Вебвизор записывает действия посетителей на сайте, в том числе заполнение полей, например заполнение формы. При этом Яндекс Метрика распознает поля, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Содержимое таких полей автоматически заменяется на звездочки.
Если вы не хотите, чтобы Вебвизор записывал содержимое полей, отключите опцию Записывать все поля на странице Настройка , на вкладке Вебвизор . После этого содержимое всех полей заменится на звездочки.
Также вы можете влиять на запись полей с помощью CSS-классов (атрибут class).
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Вебвизор будет записывать поля, отмеченные CSS-классом ym-record-keys , кроме полей для ввода пароля. Содержимое полей, не отмеченных CSS-классом ym-record-keys заменится на звездочки.
Содержимое отмеченных CSS-классом ym-disable-keys полей заменится на звездочки.
Кроме этого, вы можете настраивать запись содержимого полей внутри скрытых от записи элементов сайта.
Подключение
Примечание. Вебвизор может отключиться, если вы не просматривали записи в течение последних 6 месяцев. Чтобы возобновить запись визитов, включите опцию снова.
Настройка записи полей для ввода данных
Вебвизор записывает действия посетителей на сайте, в том числе заполнение полей, например заполнение формы. При этом Яндекс Метрика распознает поля, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Содержимое таких полей автоматически заменяется на звездочки.
Если вы не хотите, чтобы Вебвизор записывал содержимое полей, отключите опцию Записывать все поля на странице Настройка , на вкладке Вебвизор . После этого содержимое всех полей заменится на звездочки.
Также вы можете влиять на запись полей с помощью CSS-классов (атрибут class).
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Вебвизор будет записывать поля, отмеченные CSS-классом ym-record-keys , кроме полей для ввода пароля. Содержимое полей, не отмеченных CSS-классом ym-record-keys заменится на звездочки.
Содержимое отмеченных CSS-классом ym-disable-keys полей заменится на звездочки.
Кроме этого, вы можете настраивать запись содержимого полей внутри скрытых от записи элементов сайта.
На что это не влияет?
- На html-страницы
- На изображения, стили и скрипты, открываемые по непосредственной ссылке, а не служащие вспомогательными элементами страницы.
- На изображения, стили и скрипты, которые не предполагаются неизменными, например, когда подключается самая новая версия некоторой библиотеки с CDN этой библиотеки.
Настройка записи других элементов сайта
По умолчанию Вебвизор записывает все содержимое страниц сайта, кроме полей, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Вы можете влиять на запись контента сайта с помощью CSS-классов (атрибут class). Например, запретить запись содержимого окна чата. Правила, определенные для класса, срабатывают для самого элемента и всех дочерних элементов, если не указано другое.
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Задайте CSS-класс ym-hide-content для элемента, содержимое которого не нужно записывать.
Вебвизор будет записывать все элементы сайта, кроме тех, которые отмечены CSS-классом ym-hide-content . Если классом отмечен графический блок, то он заменится на серый блок, если классом отмечен текст, он заменится на произвольный набор символов и будет отображаться размытым.
Разрешить запись отдельного элемента, размещенного внутри элемента, скрытого с помощью ym-hide-content
Например, так вы можете управлять записью блока с отзывами на сайте: скрыть имя пользователя и аватар, но записать текст отзыва. В результате аватар заменится на серый блок, имя пользователя заменится на произвольный набор символов и будет размытым, а текст отзыва запишется так, как видел его посетитель сайта во время визита.
Например, для блока отзывов задан CSS-класс ym-hide-content , внутри этого блока находится форма для ввода отзыва. В этом случае Вебвизор не запишет блок отзывов, а содержимое полей заменится на звездочки.
Чтобы Вебвизор записал содержимое поля, задайте для него CSS-класс ym-show-content . Если во время записи визита Метрика распознает поле как конфиденциальное, то его содержимое заменится на звездочки.
Если вы задали для поля, расположенного внутри скрытого элемента, CSS-класс ym-record-keys , то содержимое поля также заменится на звездочки.
Выберите вопрос, чтобы найти решение.
Содержимое страницы в записи может отличаться от реального. Вероятно, на сайте часто меняются CSS. В этом случае добавьте в имена стилевых файлов хеш от содержимого. Тогда при изменении содержимого файла изменится его имя, например style.390b32d4d49d5e7d.css будет изменено на style.0c573d460df87d4de5a4.css . Это позволит Вебвизору при записи визита использовать именно тот стиль, который видит посетитель сайта.
Выполните следующие действия:
Проверьте настройки файрвола — возможно, они блокируют работу скрипта счетчика Метрики. Также счетчик может быть заблокирован расширением Adblock Plus .
Если у вас остались вопросы по работе Вебвизора, задайте их через форму ниже — укажите пример посещения, в котором некорректно отображаются данные и полную версию вашего браузера.
Подключение
Примечание. Вебвизор может отключиться, если вы не просматривали записи в течение последних 6 месяцев. Чтобы возобновить запись визитов, включите опцию снова.
Дилемма: jQuery со своего домена или с CDN?
Владельцам малых сайтов часто приходится выбирать: либо подключать jQuery и/или подобные ей библиотеки с CDN (гугловского, например), или со своего домена.
В первом случае уменьшается время загрузки сайта (в том числе первичной, т.е. при первом заходе посетителя на сайт) за счёт того, что файл с серверов Гугла с большой долей вероятности уже есть в кэше браузера. Но, например, разработчики WordPress придерживаются второго варианта, ставя во главу угла автономность. И в условиях, когда CDN падают, блокируются и т.д., их можно понять.
Теперь от такой проблемы можно будет избавиться навсегда: не всё ли равно, откуда получен файл, если его содержимое — это ровно то, что нужно html-странице, и она это удостоверяет? Можно смело указывать свой домен, и если библиотека есть в кэше (неважно, загруженная с этого сайта, другого "малого" сайта или из какого-нибудь CDN) — она подхватится.
Компактизация хэша
В идеале при записи хэша следует использовать не шестнадцатеричную систему счисления, а систему с бОльшим основанием (раз уж мы взялись экономить трафик). Ещё одна идея — атрибут magnet , содержащий magnet-ссылку. Дёшево, сердито, стандартизировано и позволяет указывать также несколько классических адресов источников, что бывает немаловажно в случае ковровых блокировок и в случаях, когда браузеру известно, что трафик к различным серверам тарифицируется по-разному.
Настройка записи других элементов сайта
По умолчанию Вебвизор записывает все содержимое страниц сайта, кроме полей, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Вы можете влиять на запись контента сайта с помощью CSS-классов (атрибут class). Например, запретить запись содержимого окна чата. Правила, определенные для класса, срабатывают для самого элемента и всех дочерних элементов, если не указано другое.
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Название CSS-класса | Описание |
---|---|
ym-hide-content | Позволяет запретить запись произвольного элемента сайта. Графический элемент будет отображаться серым, текст будет заменен на произвольный набор символов и отобразится размытым. |
ym-show-content | Позволяет разрешить запись произвольного элемента сайта. Этот класс можно использовать только для тех элементов, которые расположены внутри элементов, отмеченных CSS-классом ym-hide-content . |
Задайте CSS-класс ym-hide-content для элемента, содержимое которого не нужно записывать.
Вебвизор будет записывать все элементы сайта, кроме тех, которые отмечены CSS-классом ym-hide-content . Если классом отмечен графический блок, то он заменится на серый блок, если классом отмечен текст, он заменится на произвольный набор символов и будет отображаться размытым.
Разрешить запись отдельного элемента, размещенного внутри элемента, скрытого с помощью ym-hide-content
Например, так вы можете управлять записью блока с отзывами на сайте: скрыть имя пользователя и аватар, но записать текст отзыва. В результате аватар заменится на серый блок, имя пользователя заменится на произвольный набор символов и будет размытым, а текст отзыва запишется так, как видел его посетитель сайта во время визита.
Например, для блока отзывов задан CSS-класс ym-hide-content , внутри этого блока находится форма для ввода отзыва. В этом случае Вебвизор не запишет блок отзывов, а содержимое полей заменится на звездочки.
Чтобы Вебвизор записал содержимое поля, задайте для него CSS-класс ym-show-content . Если во время записи визита Метрика распознает поле как конфиденциальное, то его содержимое заменится на звездочки.
Если вы задали для поля, расположенного внутри скрытого элемента, CSS-класс ym-record-keys , то содержимое поля также заменится на звездочки.
Поддержка устаревшего кода счетчика По умолчанию Яндекс Метрика использует новый код счетчика. Чтобы работать с Вебвизором 2.0, замените на всех страницах сайта код на новый. Найти его можно на странице Настройка . Если на сайте установлен старый код и вы хотите использовать Вебвизор 1.0, включите опцию Устаревший код счетчика. Лимит на период хранения записей Данные хранятся 15 дней, включая текущий день . Лимит на количество записей в день Вебвизор записывает до 150 000 посещений в день с некоторой погрешностью. Система обеспечивает репрезентативность выборки, записывая посещения равномерно в течение суток. Использование Вебвизора 2.0, если на сайте установлено несколько счетчиков В этом случае включите Вебвизор 2.0 только на одном из установленных счетчиков. Если Вебвизор 2.0 подключен ко всем счетчикам, данные запишет тот счетчик, который инициализирован на сайте первым. Рекомендуемая кодировка на сайте Вебвизор корректно записывает действия посетителей, если на сайте используется кодировка UTF-8. Корректная HTML-верстка страниц Вебвизор может неточно воспроизводить посещения на страницах с большим количеством дефектов HTML-верстки (незакрытые теги, неправильная вложенность тегов и т. п.). Как правило, Вебвизор адаптируется к таким дефектам, но все-таки желательно, чтобы у страниц сайта была правильная HTML-структура. Запись страниц с резиновой версткой Для страниц с резиновой версткой посещение будет воспроизведено корректно, даже если разрешения экрана при записи и воспроизведении не совпадают. При воспроизведении возможны небольшие скачки курсора — из-за неодинакового взаимного расположения элементов контента на записываемой и воспроизводимой страницах. Использование Вебвизора 2.0 при часто обновляющихся файлах CSS
Если на вашем сайте часто обновляются CSS, добавьте в имена стилевых файлов хеш от содержимого. Тогда при изменении содержимого файла изменится его имя, например style.390b32d4d49d5e7d.css будет изменено на style.0c573d460df87d4de5a4.css . Это позволит Вебвизору при записи визита использовать именно тот стиль, который видит посетитель сайта.
Поддержка страниц с canvas Вебвизор не записывает содержимое сайта, если оно отображается с помощью элемента canvas. Запись видео- и аудио-контента Вебвизор не записывает содержимое HTML-элементов audio и video и взаимодействие с ним посетителя, если внутри этих элементов изменяются объекты Audio и Video . Запись Flash-контента Вебвизор записывает Flash-контент сайта, но не воспроизводит взаимодействие посетителя с таким содержимым. Поддержка Shadow DOM
Вебвизор не поддерживает технологии Shadow DOM.
Вебвизор записывает посещения в большинстве современных браузеров для компьютера: Яндекс Браузер, Google Chrome, Firefox, Safari, Opera, Microsoft Edge. Ограниченно поддерживается запись в бета-версиях и некоторых мобильных браузерах. Также ограниченно могут записываться и воспроизводиться посещения в любой версии Internet Explorer.
Разные браузеры могут обрабатывать одну и ту же страницу по-разному. Поэтому чтобы наиболее точно воспроизвести посещение, используйте тот же браузер, в котором оно изначально было записано.
Если на сайте используются рантайм-стили (в том числе из серии Data Styled Components), то Вебвизор не запишет или запишет некорректно визиты. Рекомендуем использовать классические стили.
Обработка медиафайлов WebP
Вебвизор не имеет возможности обрабатывать медиафайлы формата WebP.
Запись вкладок браузера в приватном режиме Вебвизор может некорректно записывать информацию о вкладках в приватном режиме браузера (например, Инкогнито в Яндекс Браузере). Запись страниц с ошибками в верстке Вебвизор может неточно записывать посещения на страницах с версткой, не соответствующей стандартам W3C. Запись содержимого iframe с другого домена Чтобы Вебвизор записал содержимое iframe, адрес которого отличается от адреса сайта, настройте счетчик особым образом. Обработка медиа-запросов Метрика может некорректно обработать некоторые медиа-запросы.
UPD0 (2016-07-19 23-31): судя по всему, первая половина моей статьи — успешно изобретённый велосипед. Спасибо хабравчанам за ссылку на спецификацию
Статья ценна не более, чем вольное описание уже придуманной технологии.
Июльский субботний вечер подходил к концу. Нарубив дров на шашлык, я повесил USB-модем на багету, скомандовал sudo wvdial , развернул браузер и обновил вкладку с открытым гитхабом. Вернее, попытался обновить. Скорость не радовала, и в итоге страница-то обновилась, но явно не хватало какого-то из стилевых файлов; и дело было не в блокировке, поскольку аналогичные проблемы я наблюдал и с другими сайтами, и зачастую они решались просто многократным обновлением страницы. Во всём был виноват перегруз 3G-сети.
Стоп! А как же кэш?
Недолгое гугление привело на официальный гугловский мануал. Целиком пересказывать его не буду; скорее всего, дело было в том, что браузер прилежно ждал, когда сервер передаст ETags, а ответ сервера затерялся в переполненных триджунглях.
Через пару дней, возвращаясь душным днём из кафе, я придумал рацпредложение, которое решает эту (и несколько других проблем), которое и излагаю в данной статье.
Добавить ко всем тэгам для подключения подчинённой статики (стилей, скриптов, изображений) атрибут checksum , который бы хранил хэш (например, SHA-1, как в git) требуемого файла:
Найдя в теле веб-страницы подобный тэг, браузер смотрит, есть ли объект с таким хэшем в кэше, и если есть, то не отправлять никаких запросов вообще: и так понятно, что файл — ровно тот, который требуется. Файлы в кэше браузера лучше сразу хранить с именами, соответствующими их хэшам, как это делает тот же git.
Обратная совместимость предлагаемого решения очевидна.
Настройка записи контента сайта
Вы можете управлять записью содержимого сайта:
Настройка записи полей для ввода данных
Вебвизор записывает действия посетителей на сайте, в том числе заполнение полей, например заполнение формы. При этом Яндекс Метрика распознает поля, в которые посетитель может вводить конфиденциальную информацию, например имя и фамилию. Содержимое таких полей автоматически заменяется на звездочки.
Если вы не хотите, чтобы Вебвизор записывал содержимое полей, отключите опцию Записывать все поля на странице Настройка , на вкладке Вебвизор . После этого содержимое всех полей заменится на звездочки.
Также вы можете влиять на запись полей с помощью CSS-классов (атрибут class).
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Название CSS-класса | Описание |
---|---|
ym-record-keys | Позволяет разрешить запись содержимого поля. Используйте этот класс для элементов textarea и input. |
ym-disable-keys | Позволяет запретить запись содержимого поля. Используйте этот класс для элементов textarea и input. Содержимое поля заменится на звездочки. |
Вебвизор будет записывать поля, отмеченные CSS-классом ym-record-keys , кроме полей для ввода пароля. Содержимое полей, не отмеченных CSS-классом ym-record-keys заменится на звездочки.
Содержимое отмеченных CSS-классом ym-disable-keys полей заменится на звездочки.
Кроме этого, вы можете настраивать запись содержимого полей внутри скрытых от записи элементов сайта.
Настройка записи контента сайта
Вы можете управлять записью содержимого сайта:
Настройка записи контента сайта
Вы можете управлять записью содержимого сайта:
Дальнейший переход к няш-мешу
Фотография в соцсети может быть представлена как блоб, содержаший хэш и адрес собственно изображения (возможно, в нескольких различных размерах), а также список комментариев и лайков. Этот блоб тоже можно рассматривать как вспомогательный файл, кэшировать и передавать друг другу.
Более того, альбом фотографий тоже легко превращается в блоб: список хэшей изображений + список хэшей блобов-фотографий (первое нужно, чтобы при добавлении лайка/комментария показывать фотографии сразу, а метаинформацию — по мере её получения).
Останется только реализовать электронную подпись и поля вида "замещает блоб такой-то" — и готова няш-меш-социалочка.
Пресловутая угадайка: актуален ли файл в кэше?
- Больше не нужно отправлять запрос и сличать полученные ETags.
- Даже если файл в кэше вроде как устарел, но хэш совпадает — его можно смело использовать.
- Чистка кэша как средство решения проблем частично теряет актуальность.
Доверенные устройства
Например, в офисе работают программисты, ЭВМ которых объединены в локальную сеть. Программист Вася приходит рано утром, открывает гитхаб и получает в кэш стили от нового дизайна, который выкатили ночью (у нас — ночь, там — день). Когда в офис приходит программист Петя и тоже загружает html-код гитхабовской странички, его ЭВМ спрашивает у всех ЭВМ в сети: "А нет ли у вас файла с таким-то хэшем?" "Лови!" — отвечает Васина ЭВМ, экономя тем самым трафик.
Потом наступает перерыв, Вася и Петя лезут смотреть котиков и пересылают фотографии друг другу. Но каждый котик скачивается через канал офиса только один раз.
Идеология
Как обычно (математик я, что уж тут поделать) сформулируем аксиомы, которые вкладываются в предложение:
Читайте также: