一段防盗链的PHP代码

<?php $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]");
}

?>

使用方法:将上述代码保存为dao4.php,
比如测试用的validatecode.rar在站点http://163.com/download里面,
则用以下代码表示下载连接.

文件名?site=1&file=文件

例如以下URL.复制到你的站点下试试

http://www.163.com/dao4.php?site=1&file=validatecode.rar

以上代码测试可用

时间: 2024-08-30 05:00:11

一段防盗链的PHP代码的相关文章

php防盗链几种代码

先来看个最简单的 下面是php实现的代码, xxx.mp3就是你的音乐文件的实际地址, 对外传播的时候只传播php地址,mp3地址对外不公开  代码如下 复制代码 <?php  if(strpos($_SERVER['HTTP_REFERER'], 'qq.com') !== FALSE) {   header('HTTP/1.1 404 Not Found');   exit;  }  readfile('xxx.mp3'); ?> 可以加入白名单的做法    代码如下 复制代码 <?

asp防盗链原理及代码

防盗链的原理: 不直接给出服务器中真实的url,将要访问的文件放到服务器上不可访问的目录中,所以要访问的文件就必须通过asp读取文件以二进制流的类型来发送文件,如果加上来源地址和用户登录状态的判断,可以一定意义上的防止盗链. 缺点是:不过开销也会很大. 下面是两个示例的函数,没有加上权限判断. Sub downloadFile(strFile)  On error resume next  Server.ScriptTimeOut=999999  Dim S,fso,f,intFilelengt

一段防盗连的PHP代码

<?php $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] = ""

一段防盗连的PHP代码_php实例

$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,以此类推  $reffe

Nginx服务器下防盗链的方法介绍_nginx

修改 /usr/local/nginx/conf/nginx.conf 这个配置文件. 找到 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; }[/code] 修改成: location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { valid_referers none blocked *.jannn.com jannn.com; if($invalid_referer) { rewrite ^/ y

nginx中nginx防盗链设置和重定向规则

rewrite命令 nginx的rewrite相当于apache的rewriterule(大多数情况下可以把原有apache的rewrite规则加上引号就可以直接使用),它可以用在server,location 和IF条件判断块中,命令格式如下: rewrite 正则表达式 替换目标 flag标记 flag标记可以用以下几种格式: last – 基本上都用这个Flag. break – 中止Rewirte,不在继续匹配 redirect – 返回临时重定向的HTTP状态302 permanent

php防盗链的常用方法小结_php技巧

1.简单防盗链 复制代码 代码如下: $ADMIN[defaulturl] = "http://jb51.net/404.htm";//盗链返回的地址 $okaysites = array("http://jb51.net/","http://www.jb51.net"); //白名单 $ADMIN[url_1] = "http://jb51.net/temp/download/";//下载地点1 $ADMIN[url_2]

真正可用的IIS的ISAPI-Rewrite伪静态URL图片防盗链规则写法_win服务器

网站程序的URL伪装法.服务器端的收费插件法和ISAPI-REWRITE的规则过滤法等,考虑自身网站结构和钱包的困难问题,最终选择了后者,即现在流行用来做伪静态的ISAPI Rewrite书写规则来实现 经测试四种情况正常,即站内链接正常,白名单里的链接正常,盗链者链接屏蔽,搜索引擎链接正常. 详细如下: 一.完全屏蔽所有盗链来源的写法(如已有其它规则,则置于已有规则的上面) 复制代码 代码如下: RewriteCond Host: (.+) RewriteCond Referer: (?!ht

Nginx防盗链配置具体方法详解

一:一般的防盗链如下:  代码如下 复制代码 location ~* .(gif|jpg|png|swf|flv)$ { valid_referers none blocked www.111cn.net ; if ($invalid_referer) { rewrite ^/ http://www.111cn.net; #return 404; } } 第一行:gif|jpg|png|swf|flv 表示对gif.jpg.png.swf.flv后缀的文件实行防盗链 第二行: 表示对www.in