Может ли пользовательский запрос "Referer" быть изменен только на стороне сервера? - PullRequest
0 голосов
/ 17 сентября 2009

У меня есть сервер веб-сайта, который выполняет такую ​​работу:

Сервер получает запрос от пользователя A (реферер запроса пуст) и затем перенаправляет (на стороне сервера) пользователя A на посещение веб-сайта B;

Можно ли каким-либо образом изменить реферер запроса пользователя A на мое доменное имя, тогда сайт B может получить мое доменное имя из запроса пользователя A?

Заранее спасибо!


Потому что веб-сайт B (мой клиент) хочет знать, сколько посещений я ему нанес; Я не хочу изменять свое клиентское программное обеспечение и хочу знать, может ли кто-то другой получить это :)

Ответы [ 3 ]

1 голос
/ 17 сентября 2009

Нет, перенаправление просто говорит клиенту использовать другой URL для завершения запроса. Но фактический запрос нового URL выполняется клиентом, а не сервером. А поле заголовка Referer устанавливается только в том случае, если клиент следовал по URL-адресу не по HTTP (щелчок по ссылке, отправка формы, «перенаправление мета» и т. Д.).

0 голосов
/ 17 сентября 2009

Насколько я знаю, браузер автоматически устанавливает реферера, если пользователь не отключил это поведение. Итак: нет, вы не можете изменить его на стороне сервера.

Потому что веб-сайт B (мой клиент) хочет знать, сколько посещений я ему нанес; Я не хочу изменять свое клиентское программное обеспечение и хочу знать, может ли кто-то другой получить это:)

Вы можете добавить уникальный идентификатор к URL, чтобы ваш клиент мог отслеживать, кто приходит с вашего сайта:

http://www.yourcustomer.com/page.html?ref=bluesea007

На самом деле, Google Analytics использует этот принцип.

0 голосов
/ 17 сентября 2009

Насколько я знаю, только через клиентскую сторону (например, JavaScript) перенаправить. Та вещь, которую вы просто должны попробовать и увидеть.

...