(转)PHP 防止盗链$_SERVER["HTTP_REFERER"]的用法举例

为大家介绍一个php防止盗链的代码,主要是用到了$_SERVER["HTTP_REFERER"],有需要的朋友,可以参考学习下。

代码如下:

http://bbs.it-home.org

*/

session_start(); 

if(!isset($_SESSION['id'])or!isset($_SESSION['member'])){ 

    echo"";//验证session 

exit(); 

$ref=$_SERVER['HTTP_REFERER']; 

if($ref==''){ 

echo'对不起,不允许从地址栏访问'; 

}else{ 

$url=parse_url($ref); 

if($url[host]!='127.0.0.1'&& $url[host]!='localhost'){ 

  echo'不允许盗链'; 

  exit(); 

?>

有关 "HTTP_REFERER" 的解释: 链接到当前页面的前一页面的 URL 地址。 不是所有的用户代理(浏览器)都会设置这个变量,而且有的还可以手工修改 HTTP_REFERER。因此,这个变量不总是真实正确的。

总结: 只有点击超链接(即) 打开的页面才有HTTP_REFERER环境变量,其它如 window.open()、 window.location=...、window.showModelessDialog()等打开的窗口都没有HTTP_REFERER 环境变量。

你可能感兴趣的:((转)PHP 防止盗链$_SERVER["HTTP_REFERER"]的用法举例)