2017-01-15 3 views
-1

Итак, скажем Im владелец домена awp.rs.Как получить URL-адрес кто-то перенаправлен FROM

Я сделал простой редирект скрипт, так что любой, кто имеет доступ awp.rs домен будет перенаправлен позволяет сказать: by.nies.host

Теперь, в by.nies.host Я хочу напечатать awp.rs becouse Im перенаправлены на веб-сайт по экранным awp.rs

ответ

2
<?php $url = parse_url($_SERVER['HTTP_REFERER']); 
    echo $url['host']; 
?> 

вы можете добавить что-то вроде этого, чтобы увидеть, что еще массив URL $ содержит. Что-то может быть полезно ...

<pre><?php print_r($url);?></pre> 

Обратите внимание, что это значение реферер обеспечивается браузером посетителей и не гарантирует точность и иммунитет к подмены

+0

Спасибо, это было то, что я искал! – Nikola

1
$_SERVER['HTTP_REFERER']; 

«HTTP_REFERER» адрес страницы (если таковая имеется), которая передала агента пользователя на текущей странице. Это устанавливается пользовательским агентом. Не все пользовательские агенты установят это, а некоторые предоставляют возможность изменять HTTP_REFERER как функцию . Короче говоря, на самом деле нельзя доверять.

http://php.net/manual/en/reserved.variables.server.php


альтернативный подход, доступный в качестве владельца перенаправления и перенаправлены на сайт:

в скрипте на: awp.rs

вы могли 'тег' адрес, который вы отправляете пользователю:

<?php 
header("Location: http://by.nies.host?from=awp"); 
exit(); 

на by.nies.host вы просто проверить для из в $_GET

echo "from $_GET['from']"; 
+0

Спасибо. Есть ли способ удалить http: // и www. поэтому он отобразит только домен (awp.rs)? И я не понимаю, почему на это нельзя действительно доверять? – Nikola

+0

да его строка, как и любая другая, и ее можно манипулировать - ей не доверяют, так как браузер пользователя может установить любое значение, которое он хочет. я могу сказать, что мой браузер говорит на каждом сайте, что мой REFERER является «mysite.com» для бесплатной рекламы в журналах; но в моем личном случае это всегда пусто, так как я не хочу, чтобы вы отслеживали меня – nogad

+0

см. мой ответ @nogad ..Я использовал функцию parse_url, чтобы вы могли печатать только имя хоста или любые/все другие элементы из URL-адреса –

0

Вы можете попробовать с $_SERVER['HTTP_REFERER'] но

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

0

Если вы поменяете с вашего веб-сайта и хотите обратиться к другому веб-сайту, самый простой способ сделать это - установить $ _GET var. например:

by.nies?refer=YourSite 

Это самый простой способ

Смежные вопросы