Перенаправить посетителя и создать новую информацию о реферере? (немного PHP) - PullRequest
0 голосов
/ 14 июля 2010

У меня есть 2 веб-сайта - веб-сайт A - это основной «маркетинговый» сайт, который получает трафик, а веб-сайт B - это сайт, где люди совершают покупки. Система отчетов сайта B предоставляет мне URL-адрес ссылки с сайта A, который привел к покупке.

На сайте A имеется множество ссылок на действия, которые ведут на сайт B, и я хотел бы измерить, какая из этих ссылок наиболее эффективна для стимулирования продаж.

Вот что я сейчас настроил:

Допустим, вы находитесь на siteA.com/this-page.php. Обычно, щелкнув ссылку на сайт B, вы увидите эту страницу в качестве реферера. Вместо этого ссылка на сайт B - это siteA.com/this-page.php?link=top-banner&dest=home, где «link» предоставляет идентификатор для щелкаемой ссылки, а dest - это страница на сайте BI, которую нужно отправить нажмите.

У меня есть PHP на каждой странице сайта со следующим:

<?php
if (isset($_GET['link'])) {
  $qs = $_SERVER['QUERY_STRING'];
  $form_action = "/redirect.php?" . $qs;
?>

<html>
<body onload="document.forms.go.submit();">
<form method="post" action="<?php echo $form_action; ?>" name="go"></form>
</body>
</html>

<?php } else {} ?>

Страница redirect.php определяет целевую страницу на сайте B и перенаправляет заголовок на соответствующую страницу.

Это прекрасно работает для меня прямо сейчас, и реферер правильно отображается в статистике сайта B.

Это похоже на не элегантное решение, и я также столкнулся с парой проблем с юзабилити:

  1. При нажатии на ссылку на сайт B происходит заметная задержка, поскольку текущая страница перезагружается, форма отправляется, а посетитель перенаправляется.

  2. Когда посетитель попадает на сайт B, он не может нажать кнопку «назад», чтобы вернуться на сайт A. При нажатии на кнопку «назад» он попадает на страницу с параметром? Link, и он просто перенаправляется снова.

Я начинающий программист, поэтому ваша помощь и предложения приветствуются. Спасибо!

РЕДАКТИРОВАТЬ: По сути, я делаю смену реферера на лету:

  • постоянный реферер: siteA.com/this-page.php
  • обновленный реферер: siteA.com/this-page.php?link=top-banner

1 Ответ

0 голосов
/ 14 июля 2010

Итак, это поток:

siteA.com/this-page.php (which has several links, each with an identifier "id")
siteA.com/this-page.php?link=id&dest=home [referrer=siteA.com/this-page.php]
<form/javascript "forward hack">
siteA.com/redirect.php?link=id&dest=home [referrer=siteA.com/this-page.php?link=id&dest=home]
siteB.com/home [referrer=siteA.com/this-page.php?link=id&dest=home]

Я не уверен, что понимаю ваш вопрос.Вы хотите, чтобы реферер оставался на siteA.com/redirect.php?link=id&dest=home, а не siteA.com/this-page.php?link=id&dest=home?Зачем?Браузер не меняет реферер, когда он следует за редиректом, поэтому вам действительно нужен хак для пересылки.

Я предлагаю вам сделать так, чтобы ваши ссылки ссылались на redirect.php напрямую.Реферал будет siteA.com/this-page.php вместо redirect.php, но я не понимаю, почему это проблема.

...