PHP防盗链代码实例
更新时间:2014年08月27日 14:34:28 投稿:shichen2014
这篇文章主要介绍了PHP防盗链的实现方法,是非常实用的技巧,需要的朋友可以参考下
防盗链是目前非常常见的web程序设计技巧。本文就以一个实例展示了PHP防盗链的实现方法。分享给大家供大家参考之用。具体方法如下:
主要功能代码如下:
<?php
/*
使用方法:将上述代码保存为dao4.php,
比如测试用的validatecode.rar在站点http://www.XXXX.com里面,
则用以下代码表示下载连接.
文件名?site=1&file=文件
例如以下URL:
http://www.XXXX.cn/dao4.php?site=1&file=validatecode.rar
*/
$ADMIN[defaulturl] = "http://www.XXXX.com/404.htm"; //盗链返回的地址
$okaysites = array(
"http://www.XXXX.com/",
"http://XXXX.com"
); //白名单
$ADMIN[url_1] = "http://www.XXXX.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]");
}
?>
希望本文所述对大家学习PHP程序设计有所帮助。
相关文章
Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
今天用学习用Drupal,在同时安装ctools,CCK,views,panels时出现了奇怪的状况。2011-04-04


最新评论