<?php /* 使用方法:将上述代码保存为dao4.php, 比如测试用的validatecode.rar在站点http://www.niuzen.com里面, 则用以下代码表示下载连接. 文件名?site=1&file=文件 例如以下URL.复制到你的站点下试试 http://www.coolcodes.cn/dao4.php?site=1&file=validatecode.rar 以上代码测试可用 */ $ADMIN[defaulturl] = "http://www.163.com/404.htm";//盗链返回的地址 $okaysites = array("http://www.163.com/","http://163.com"); //白名单 $ADMIN[url_1] = "http://www.163.com/download/";//下载地点1 $ADMIN[url_2] = "";//下载地点2,以此类推 $reffer = $HTTP_REFERER; if($reffer) { $yes = 0; while(list($domain, $subarray) = each($okaysites)) { if (ereg($subarray,"$reffer")) { $yes = 1; } } $theu = "url"."_"."$site"; if ($ADMIN[$theu] AND $yes == 1) { header("Location: $ADMIN[$theu]/$file"); } else { header("Location: $ADMIN[defaulturl]"); } } else { header("Location: $ADMIN[defaulturl]"); } ?>
Detailed description: http://php.662p.com/thread-456-1-1.html
Implementing this with PHP consumes more resources. It is recommended to start with the server and change the apache configuration
The following is the code for PHP implementation. xxx.mp3 is the actual address of your music file. When distributing to the outside world, only the PHP address and mp3 address are transmitted. Not public to the public
if(strpos($_SERVER['HTTP_REFERER'], 'qq.com') !== FALSE) {
header('HTTP/1.1 404 Not Found' );
exit;
}
readfile('xxx.mp3');
?>
I am new to PHP, so I can only help you explain the meaning of this expression. As for whether it takes up server bandwidth, I have never been exposed to it and don’t understand it.
The readfile() function reads a file and writes it to the output buffer. If "fopen wrappers" has been activated, the URL can be used as the file name in this function.
The parameter $_GET['url'] in your example should be an array, 'url' is the index, and the value should be a url address. Therefore, combined with the explanation of the readfile() function above, the url address is used as The file name is written to the output cache.