提到防盗链的实现原理就不得不从HTTP协议说起,在HTTP协议中,有一个表头字段叫referer,通过referer,网站可以检测目标网页访问的来源网页,如果是资源文件,则可以跟踪到显示它的网页地址。有了referer跟踪来源,通过检测referer,一旦检测到来源不是本站即进行阻止或者返回指定的页面。
以下是php代码
<?php
if(isset($_SERVER['HTTP_REFERER'])){
if(strpos($_SERVER['HTTP_REFERER'],"http://localhost/test")==0){ //指定localhost/test/下的网页才能访问
//正常显示内容
}else{
header("location: ###.php")//处理非法访问
}
}else{
header("location: ###.php") //处理非法访问
}
?>