php判断远程图片是否防盗链

function checkpic($url){
        $curl = curl_init($url);//设置url
        curl_setopt($curl, CURLOPT_REFERER, 'http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"]);//假装referer(正常在地址栏输入网址能打开,由于referer是空的,而在网页中用 src 打开时referer是有内容的因此打不开,referer内容能够到浏览器控制台查看,这一步就是伪装是咱们的网页内打开的,来判断图片是否设置了防盗链)
        curl_setopt($curl, CURLOPT_HEADER, 1); //获取Header
        curl_setopt($curl,CURLOPT_NOBODY,true); //由于咱们只须要Header,因此Body就不要了吧
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //数据存到成字符串吧,别给我直接输出到屏幕了
        $data = curl_exec($curl); //开始执行啦~
        
        $status=curl_getinfo($curl,CURLINFO_HTTP_CODE); //得到HTTPSTAT码
        curl_close($curl); //用完记得关掉他
        return ($status==200)?true:false;//若是状态码是200返回真,那状态码是403天然就返回假了。
}
相关文章
相关标签/搜索