[php]referer应用--http防盗链技术

1、防盗链的理解

所谓防盗链是防止其他的网站引用自己网站的资源连接,比如图片、视频等等,但是并不会阻碍从自己网站上享受资源的用户,这就要求能够将其他网站的连接请求阻止

2、防盗链的原理

其实从自己网站使用资源的时候不是由浏览器直接请求资源的,肯定是通过在自己网站上点击,然后从这个页面跳转到资源,无论怎么样,用户是通过自己的网站页面作为中介来访问资源,就类似通过类中定义的方法来访问受保护的变量一样,因此在发向服务器的http请求中就有一个字段为referer用来表明来源于何处,假如是从自己网站发出的就放行,否则就禁止,因此达到防盗链的目的。

3、代码:

<?php

    $str = $_SERVER['HTTP_REFERER'];//$_SERVER可以提取http协议请求
    echo $str."<br/>";
    if(strpos($str, "http://localhost")===0)//strpos用于判断某字符串在另一字符串中的位置
        echo "permit";
    else
        echo "no permit!";
    
?>