6  /  26

Технология переноса посетителей между сайтами

Просмотров: 4347 (Статистика ведётся с 06.02.2017)
Дата последнего изменения: 21.10.2017
Сложность урока:
2 уровень - несложные понятия и действия, но не расслабляйтесь.
1
2
3
4
5

Особенностями многосайтовой системы являются:

  • единые права на все сайты
  • единый набор бюджетов пользователей на все сайты
  • единая система ведения статистики на все сайты
  • и т.п.

Исходя из этого, становится актуальной задача распознать одного и того же посетителя, приходящего на разные сайты c разными доменными именами в рамках одного портала.

Распознавание посетителей осуществляется с помощью файлов cookie (куков), представляющих из себя информацию, передаваемую между веб-сервером и браузером и хранимую только на локальном диске посетителя.

Теперь постараемся объяснить на примере суть проблемы:

  • При первом заходе посетителя на сайт A ему выдаются ряд идентификаторов, используемых разными модулями (например, идентификатор посетителя в модуле статистики или идентификатор покупателя в модуле интернет-магазина и т.д.), которые запоминаются в хранимых cookie принадлежащих сайту A.
  • Когда посетитель в следующий раз возвращается на этот же сайт A, он будет "узнан" благодаря информации хранимой в cookie, принадлежащих сайту A.
  • Теперь представим, что этот же посетитель пришел на сайт B. Возникает задача "узнать" его как посетителя в недавнем прошлом cайта A. Под термином "узнать" здесь понимается - получить идентификаторы, выданные ему на сайте A. Проблема осложняется тем, что если доменное имя сайта B отличается от доменного имени сайта A, то информация хранимая в cookie принадлежащих сайту A не может быть получена при заходе посетителя на сайт B. Также есть обратная проблема - cookie устанавливаемые с сайта A (и на этот же сайт A) не могут быть установлены на сайт B. Такова политика безопасности браузеров.

Для решения вышеописанных проблем используется технология переноса cookie посетителя между разными сайтами с разными доменными именами и принадлежащих одному порталу. Она имеет также название UserMultiSiteTransfer.

Алгоритм работы технологии можно описать так:

  • Когда посетитель заходит на сайт A, идентификаторы, выдаваемые ему, будут сохраняться в cookie с помощью функции CMain::set_cookie, основная задача которой не только установить cookie для текущего сайта A, но и запомнить данные этого cookie для дальнейшего распространения его на другие сайты B, C, D.
  • В конце визуальной части эпилога вызывается функция CMain::ShowSpreadCookieHTML. В результате получится, что cookie, установленный на сайте A, будет скопирован (перенесен) на другие сайты - B, C, D.
  • Аналогично происходит и для других сайтов. Если посетитель, зайдя на сайт B, получит какой-либо идентификатор, который необходимо сохранить в cookie, то этот идентификатор будет также сохранен и для других сайтов A, C, D. Таким образом, мы добиваемся единого набора cookie для всех сайтов одного портала.

Использование данной технологии позволяет:

  • В модуле Веб-аналитика подсчитывать уникальных посетителей для всего портала.
  • В модуле Реклама, баннеры позволяет корректно учитывать количество показов одного баннера одному посетителю.

Другие модули также активно используют эту методику.

Примечание:

Технология UserMultiSiteTransfer будет использоваться для сайтов многосайтовой конфигурациии, если активирована опция: Распространять куки на все домены в настройках Главного модуля.

20

  Пройти тест для самопроверки
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии