Stape

Міждоменне відстеження на стороні сервера за допомогою тегу Cookie reStore

Оновлено
15 листоп. 2024 р.
Опубліковано
2 лип. 2022 р.
Також є

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

Міждоменне відстеження на стороні сервера може викликати ще більше розчарування. У цій статті я розповім, як працює міждоменне відстеження ss, а також деякі пов’язані теми, як-от відстеження на стороні сервера Google Analytics, використання файлів cookie FPLC і тег Cookie ReStore від Stape, який може допомогти повторно використовувати файли cookie в різних доменах.

Міждоменне відстеження Google Analytics на стороні сервера

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

Google Analytics відстежує сеанси користувачів, генеруючи унікальний ідентифікатор клієнта (_ga) для кожного. Таким чином, він може визначити, чи хтось повертається на сайт або є новим.

Коли Google Analytics зв’язує користувачів між різними доменами, він використовуватиме той самий ідентифікатор клієнта для обох веб-сайтів. Ідентифікатор клієнта зберігається в файлах cookie браузера. Якщо ввімкнено міждоменне відстеження, Web GA додасть параметр зв’язування до URL-адрес, які вказують на домен призначення.

Цей параметр URL-адреси містить ідентифікатор клієнта, мітку часу та метадані браузера. У цільовому домені GA перевірить параметри в URL-адресі, і якщо знайде параметри компонувальника, GA витягне ідентифікатор клієнта з параметра та збереже його у файлах cookie.

Коли ви переходите на серверну Google Analytics і файли cookie, керовані сервером, створюється новий файл cookie FPID. Цей замінює _ga та має прапорець HttpOnly, що означає, що він недоступний для JavaScript. Ось тоді починаються ускладнення.

Ми вже обговорювали, що міждоменне відстеження Web GA використовує ідентифікатор клієнта (cookie _ga) і додає параметри компонувальника до домену призначення. Оскільки файл cookie FPID є HttpOnly, його неможливо прочитати та додати до URL-адреси, оскільки JavaScript не може отримати доступ до файлу cookie HttpOnly.

Щоб усунути цю проблему, Google створив новий файл cookie FPLC.

FPLC – це хеш файлів cookie FPID, а не HttpOnly, що означає, що JavaScript може отримати доступ до FPLC і використовувати його для міждоменного відстеження.

Перед налаштуванням міждоменного відстеження для ss GA слід знати про кілька важливих нюансів:

  • Термін служби cookie FPLC становить 20 годин. Це означає, що міждоменне відстеження працюватиме, лише якщо користувач натисне цільову URL-адресу менш ніж через 20 годин після переходу на сайт. Припустімо, що буде близько 0 випадків, коли користувач залишатиметься на сторінці довше 20 годин і клацатиме цільову URL-адресу.
  • Обидва веб-сайти мають використовувати відстеження на стороні сервера. Оскільки FPID і FPLC доступні лише для ss GA, обидва сайти, для яких ви налаштували міждоменне відстеження ss, повинні використовувати ss GA.
  • Обидва веб-сайти мають належати одному обліковому запису Google Tag Manager. Ви можете використовувати різні контейнери GTM, але повинні використовувати один обліковий запис GTM.

Подібно до міждоменного відстеження web GA, після налаштування міждоменного відстеження ss, GA додасть параметр FPLC до URL-адрес цільового сайту. Серверний контейнер цільового сайту перехопить параметр FPLC із URL-адреси та встановить FPID.

Міждоменне відстеження Google Analytics на стороні сервера допомагає лише відстежувати GA на різних доменах. Але що, якщо ви хочете передати інші файли cookie з domainA.com до domainB.com. Щоб вирішити ці проблеми, Stape створив тег Cookie reStore для server Google Tag Manager.

Тег cookie reStore призначений для зберігання ідентифікаторів користувачів і їхніх файлів cookie у Firebase і відновлення їх у разі потреби. Щоб цей тег працював, ви повинні передати будь-які ідентифікатори користувача на першому сайті та використати той самий ідентифікатор користувача на іншому сайті для отримання файлів cookie.

Немає обмежень щодо типу ідентифікатора користувача та його номера. Це може бути або адреса електронної пошти, або інший вид унікальних ідентифікаторів, як-от ідентифікатор користувача в CRM, файл cookie тощо.

Варіанти використання тега Cookie reStore:

  • Міждоменне відстеження
  • Кросбраузерне відстеження
  • Налаштування правильних тегів UTM
  • По суті, будь-які ситуації, коли вам потрібно зберігати та видобувати файли cookie одного користувача

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

Firebase Path - шлях до колекції Firebase, який слід використовувати для запису/читання даних. Тег створюватиме новий документ Firestore у вказаній колекції кожного разу, коли активується тег cookie reStore.

Firebase Project ID – додайте ідентифікатор проекту Firebase. Тег використовує ідентифікатор проекту за замовчуванням, пов’язаний із вашим обліковим записом служби, коли він пустий.

Список ідентифікаторів - додайте ідентифікатори користувачів, які слід використовувати для ідентифікації того самого користувача.

Список файлів cookie, які потрібно відновити - список файлів cookie та їх термін служби в секундах, які слід зберегти та відновити.

cookie restore tag

У цьому прикладі я буду зберігати файли cookie fbc, fbp і channel_flow на сайті https://wp-demo.stape.io/ і відновлювати їх на https://stape.dev/.

Щоб налаштувати цей тег, мені потрібно:

  • Обидва сайти, які використовують відстеження на стороні сервера через sGTM.
  • Налаштування міждоменного Google Analytics, оскільки я використовуватиму _ga як унікальний ідентифікатор користувача.
  • Обліковий запис Google Service створений та підключений до обох контейнерів у stape.io powerups. Для облікового запису служби налаштовано дозвіл Firestore.

Давайте почнемо з налаштування тегу cookie reStore.

1. Завантажте тег Cookie reStore із GitHub -> Відкрийте розділи шаблонів тегів у серверному контейнері Google Tag Manager -> Натисніть Створити -> Імпортуйте нещодавно завантажений шаблон тегу reStore -> Натисніть Зберегти.

Завантажте та імпортуйте тег Cookie reStore для всіх сайтів, для яких потрібно налаштувати міждоменне відстеження. У моєму випадку я додав шаблон тегу Cookie reStore до sGTM контейнерів https://wp-demo.stape.io/ і https://stape.dev/.

cookie restore tag

2. Створіть тег cookie reStore. Додайте шлях Firebase та ідентифікатор проекту Firebase. Переконайтеся, що ви підключили сервісний акаунт Google до своїх контейнерів stape.io.

Додайте файли cookie, які мають зберігатися у Firebase. Я буду використовувати перші сторонні файли cookie _ga як унікальний ідентифікатор користувача. Щоб мати той самий ідентифікатор користувача в домені призначення, я налаштував міждоменне відстеження UA.

cookie restore tag

3. Коли користувач відвідує wp-demo.stape.io, він може натиснути кнопку та перейти на інший домен, stape.dev. Кожного разу, коли користувач натискає вихідне посилання, до цільової URL-адреси додається параметр зв’язування _ga.

cookie restore tag
cookie restore tag

Щоб отримати параметр _ga з URL-адреси цільового сайту, я використовую змінну split string, доступну в галереї шаблонів sGTM.

split string variable

4. У контейнері sGTM цільового сайту (stape.dev) я встановив тег cookie reStore, який витягує та встановлює файли cookie fbc, fbp і потоку каналів із Firestore на основі параметра client_id, який використовує параметр _ga, отриманий із URL.

cookie restore tag

5. Після завершення налаштування відкрийте попередній перегляд sGTM, Firebase і консоль, щоб провести тест. У моєму випадку я перевірив, чи файли cookie wp-demo.stape.io відповідають файлам cookie stape.dev, і відповідні записи були створені у Firestore.

cookie restore tag
cookie restore tag
cookie restore tag

6. Після завершення налаштування не забудьте опублікувати оновлення для обох контейнерів.

Висновок:

Сподіваюся, ця публікація в блозі проливає більше світла на міждоменне відстеження на стороні сервера. Ми обговорювали, що Google Analytics має власне рішення для міждоменного відстеження, яке використовує новий файл cookie FPLC, доступ до якого можна отримати через JavaScript і передачу цих файлів cookie між різними доменами.

Якщо вам потрібно зберігати та відновлювати файли cookie між доменами, тег cookie reStore може бути найкращим рішенням. Він зберігає унікальні ідентифікатори користувачів і файли cookie у Firestore, а потім використовує той самий унікальний ідентифікатор для відновлення файлів cookie на цільовому сайті.

Сподіваюся, цей гайд допоможе вам налаштувати міждоменне відстеження для відстеження на стороні сервера. Якщо вам потрібна допомога в налаштуванні трекінга ss, не соромтеся звертатися.

Теги:sGTM tag

Спробуйте Stape для серверного трекінгуright now!