$_SERVER['HTTP_REFERER'] всегда пуст - PHP

<?php
$camefrom =$_SERVER['HTTP_REFERER'];
if ((substr($camefrom,0,26) == "http://www.fromperson.com")
header( 'Location: http://toperson.com' ) ;
?>

Мне нужно перенаправить на www.to.com, если запрос был сделан с www.from.com. Этот код находится на www.thridperson.com/index.php.

$comefrom всегда пуст.

Я читал, что $_SERVER['HTTP_REFERER'] ненадежен. Есть ли другой способ выполнить это перенаправление?

Примечание. Я потерял доступ к старому домену, то есть fromperson.com. Итак, я не могу изменить эту логику перенаправления, это должно быть сделано таким образом, и это должно быть сделано только на сайте ThirdPerson.com/index/php.


person Gopi    schedule 23.12.2010    source источник
comment
Основываясь на вашем последнем редактировании, я боюсь, вам не повезло. Прости.   -  person Jan Hančič    schedule 23.12.2010
comment
@ Ян Ханчич ОМГ! :( Любая работа с Javascript?   -  person Gopi    schedule 23.12.2010
comment
@ Ян Ханчич Спасибо за помощь :)   -  person Gopi    schedule 23.12.2010
comment
У меня такая же проблема с вопросом. Не могли бы вы подробнее рассказать о параметре GET, который вы упомянули? Не могли бы вы привести конкретный пример, чтобы я мог следовать? - Пэм Эппл   -  person Dustin    schedule 08.08.2012


Ответы (2)


$_SERVER['HTTP_REFERER'] действительно ненадежен. Клиент (браузер) не обязан включать его в запрос. Если вам нужно пуленепробиваемое решение, которое всегда будет работать, вам придется модифицировать ваше приложение на `fromperson.com', чтобы включить некоторый параметр GET при ссылке на вашу веб-страницу, а затем вы можете проверить, существует ли этот параметр GET, а затем выполнить перенаправление.

person Jan Hančič    schedule 23.12.2010

Нет способа сделать в соответствии с моим требованием

person Gopi    schedule 11.01.2011