2010-12-13 104 views
0

如果鏈接來自特定域,我需要能夠使用PHP進行檢測。我不能只檢查域是否存在於鏈接中,因爲它可能是通過追加域僞造的。如何檢測鏈接是否來自特定域

謝謝。

+0

你能提供一個你想要的例子嗎?有可能你只需要使用'parse_url()'。 – Matthew 2010-12-13 19:27:22

回答

0

我相信你會想要檢查引薦,並確保你檢查雙正斜槓,因爲這是協議(HTTP/HTTPS)的一部分,不能僞造。

檢查此鏈接額外的參考:Determining Referer in PHP

我會檢查對像...

//www.mydomain.com

//mydomain.com

+0

不,實際上我需要檢測一篇文章中的鏈接,然後分析該域名是什麼。謝謝。 – santa 2010-12-13 19:43:40

+0

我的錯誤。上面的帖子有助於我相信。 – jocull 2010-12-13 20:27:30

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 

現在,關於這個的好處是,追加域這樣一個網址的結尾:

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

不會工作作爲主機元素依然會說,該鏈接指向www.google.com而不是www.foo.com。

希望這會有所幫助。

相關問題