2010-12-13 3 views
0

Мне нужно иметь возможность обнаруживать с PHP, если ссылка принадлежит определенному домену. Я не могу просто проверить, присутствует ли домен в ссылке, потому что это может быть связано с добавлением домена.Как определить, связана ли ссылка с определенным доменом

Спасибо.

+0

Вы можете указать пример, что вы ищете? Возможно, вам просто нужно использовать 'parse_url()'. – Matthew

ответ

0

Я считаю, что вам нужно проверить реферер и убедиться, что вы проверяете двойные косые черты, поскольку это часть протокола (HTTP/HTTPS) и не может быть подделана.

Проверить эту ссылку для дополнительной справки: Determining Referer in PHP

Я хотел бы проверить на что-то вроде ...

//www.mydomain.com

//mydomain.com

+0

Нет, на самом деле мне нужно обнаружить ссылку в сообщении, а затем проанализировать, что такое домен. Благодарю. – santa

+0

Моя ошибка. Сообщение выше помогает мне, я верю. – jocull

3

Просто используйте parse_url() как konforce упомянутый. Например:

$url = "http://www.google.com/"; 
$parts = parse_url ($url); 

print $parts["host"]; // will print www.google.com 

// Or, for PHP 5.1 and above 
$host = parse_url ($url, PHP_URL_HOST); // returns www.google.com 

Теперь, хорошая вещь о том, что добавление в домен законцовки URL, как это:

http://www.google.com/?www.foo.com 

не будут работать в качестве хозяина элемент будет по-прежнему говорят, что ссылка указывает на www.google.com, а не на www.foo.com.

Надеюсь, это поможет.

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