domain: {
host: 'it-agency.ru',
isolate: false
}
Настраиваем домены.
Прежде всего давайте поговорим о том, как скрипт ведет себя при отсутствии этого параметра: если мы не передаём ему никакого значения, куки будут поставлены для текущего домена и всех его поддоменов.
Почему это работает именно так. Предположим сайт не имеет поддоменов и сейчас это не важно: шарит ли главный домен печеньки с поддоменами или нет. Но что будет, если однажды
поддомены всплывут? Если куки были не расшарены, то поддменам они будут недоступны. Это означает, что переход с основного домена на поддомен (и наоборот) будет считаться
реферальным трафиком.
Поэтому по умолчанию печеньки шарятся. Так или иначе, если вы не хотите делиться куками
— используйте опцию isolate: true для того, чтобы изолировать их.
Давайте посмотрим на примеры.
Предположим у вас есть сайт: site.com. На вашем сайте есть блог: blog.site.com. И вы хотите, чтобы переходы с сайта на блог и обратно считались внутренним трафиком: то есть источник blog.site.com не фиксировался как referral и не перезаписывал другие источники
при новой сессии. Для этого нужно на страницах сайта и блога добавить строчку:
domain: 'site.com'
При такой настройке, если пользователь перешел с blog.site.com на site.com (а также с alex.blog.site.com на site.com), источник не перезапишется и такой переход будет
равноценен переходу с site.com/about на site.com/contacts.
Теперь рассмотрим противоположенный сценарий: когда вы хотите разделять трафик между поддоменами и считать его реферальным. Есть основной сайт (site.com) и есть блог
(blog.site.com), на котором есть поддомены для юзеров (alex.blog.site.com). Вы хотите
переходы между blog.site.com и alex.blog.site.com считать внутренним трафиком, а переходы
между этими поддоменами и основным сайтом — реферальным. Для этого:
// на страницах основного сайта
domain: {
host: 'site.com',
isolate: true
}
// на страницах поддоменов blog.site.com и alex.blog.site.com
domain: 'blog.site.com'
Обратите особое внимание на параметр isolate в параметрах для основного сайта. Он имеет
значение true тогда и только тогда, когда не-реферальным трафик должен быть
исключительно в рамках указанного домена. Весь остальной трафик, включая переходы с поддоменов в этом
же домене, будет считаться реферальным.
В нашем примере при такой настройке все переходы между основным сайтом и блогами будут
считаться реферальным трафиком. И если пользователь в первый раз перешёл на основной
сайт, кликнув по ссылке из блога пользователя, то его источник будет: alex.blog.site.com
(тип трафика: referral).
Не изменяйте значение параметра isolate после выкатки скрипта на боевой сервер. Иначе
посетители получат дублирующиеся куки и начнут происходить странные вещи.
Опция, которая позволит принудительно обновлять домен у печенек при смене настроек,
в списке работ, но пока она не реализована.
Проверьте ещё раз, что вы правильно поняли, когда использовать этот параметр.
Домен страницы, на которой установлена настройка isolate с параметром true должен
совпадать с хостом, указанным в этой настройке:
// ВЕРНО: на страницах site.com
domain: {
host: 'site.com',
isolate: true
}
// НЕ ИМЕЕТ СМЫСЛА: на страницах blog.site.com
domain: {
host: 'site.com',
isolate: true
}
Указанный хост не имеет поддоменов, трафик с которых вы хотите
считать не-реферальным:
domain: {
host: 'site.com',
isolate: true
}
// трафик со ВСЕХ поддоменов на site.com будет реферальным