Редактировать: новый, рекомендуемый способ
В Google Analytics теперь есть специальный параметр URL, utm_referrer
, где вы можете передать реферер на страницу, на которую вы перенаправляете;при этом будет смоделировано то же поведение, что и ниже, без необходимости связываться с файлами cookie или функциями.
В вашем примере вы должны заставить свой код сказать:
document.location = "http://mysite/b.php?utm_referrer=" + encodeURIComponent(location.href); ;
Старый, сложнее, но функциональнее
В Google Analytics есть функция setRefererOverride () .Если вы установите его, он переопределит значение реферера, которое он отслеживает, на любое значение, которое вы установили.
Лучший способ сделать это - до перенаправления сохранить реальный реферер в файле cookie, например, так:
document.cookie = "realreferrer="+encodeURIComponent(document.referrer)+"; path=/";
Затем прочитайтезначение cookie на странице.Если файл cookie установлен, вызовите эту функцию перед просмотром страницы.
var realreferrer = readCookie("realreferrer"); //using a readCookie function of some kind
if (realreferrer) {
_gaq.push(['_setReferrerOverride', realreferrer ]);
//if using the old code, use pageTracker._setReferrerOverride(realreferrer);
}