Сплит-тесты Google Optimize приводят к потере PHP значений сеанса - PullRequest
0 голосов
/ 19 марта 2020

Когда Google Optimize перенаправляет страницу во время сплит-теста, это приводит к потере ранее записанных значений сеанса, как если бы пользователь внезапно оказался в совершенно новом сеансе.

Например, предположим, я настроил Laravel промежуточное программное обеспечение для регистрации определенного значения в сеансе, чтобы мы могли проверить его при всех загрузках страницы:

public function handle($request, Closure $next, $guard = null)
{
    session()->put('trk_id', request('trk_id'));

    return $next($request);
}

Это будет зафиксировано в тот момент, когда кто-либо перейдет к: https://example.com/some/page-1?trk_id=1234

Сеанс сохраняется в Redis ElastiCache, и на него можно ссылаться при последующей загрузке страницы по мере необходимости. Это прекрасно работает при отсутствии сплит-тестов.

  1. https://example.com/some/page-2
  2. https://example.com/some/page-3
  3. https://example.com/some/page-4
  4. ... и так далее. В фоновом режиме это значение trk_id всегда доступно из session('trk_id')

Это прерывается, когда сплит-тест перенаправляет на альтернативную страницу в том же тестируемом домене: https://example.com/some/split/page-5?utm_expid=.asasfasdfdas-sdf.0&utm_referrer=https%3A%2F%2Fexample.com%2Fsome%2Fpage-4

Что может быть причиной этого?

...