PHP防盗链代码实例


Posted in PHP onAugust 27, 2014

防盗链是目前非常常见的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程序设计有所帮助。

PHP 相关文章推荐
PHP 选项及相关信息函数库
Dec 04 PHP
Mysql的GROUP_CONCAT()函数使用方法
Mar 28 PHP
关于php mvc开发模式的感想
Jun 28 PHP
7个超级实用的PHP代码片段
Jul 11 PHP
用PHP提取中英文词语以及数字的首字母的方法介绍
Apr 23 PHP
分享下页面关键字抓取components.arrow.com站点代码
Jan 30 PHP
50个PHP程序性能优化的方法
Jun 02 PHP
Thinkphp多文件上传实现方法
Oct 31 PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
Nov 28 PHP
php基于自定义函数记录log日志方法
Jul 21 PHP
PDO::beginTransaction讲解
Jan 27 PHP
PHP标准库(PHP SPL)详解
Mar 16 PHP
如何让搜索引擎抓取AJAX内容解决方案
Aug 25 #PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
Aug 25 #PHP
简单分析ucenter 会员同步登录通信原理
Aug 25 #PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
Aug 25 #PHP
ThinkPHP查询返回简单字段数组的方法
Aug 25 #PHP
php防止伪造数据从地址栏URL提交的方法
Aug 24 #PHP
php批量删除数据库下指定前缀的表以prefix_为例
Aug 24 #PHP
You might like
根德Grundig S400/S500/S700电路分析
2021/03/02 无线电
PHP面向对象的进阶学习(抽像类、接口、final、类常量)
2012/05/07 PHP
php+ajax实现的点击浏览量加1
2015/04/16 PHP
64位windows系统下安装Memcache缓存
2015/12/06 PHP
PHP函数func_num_args用法实例分析
2015/12/07 PHP
封装的原生javascript弹出层代码
2010/09/24 Javascript
让js弹出窗口居前显示的实现方法
2013/07/10 Javascript
Node.js编码规范
2014/07/14 Javascript
一个不错的字符串转码解码函数(自写)
2014/07/31 Javascript
jQuery与Ajax以及序列化
2016/02/01 Javascript
jQuery Mobile页面返回不需要重新get
2016/04/26 Javascript
JSON对象转化为字符串详解
2017/08/11 Javascript
JavaScript中附件预览功能实现详解(推荐)
2017/08/15 Javascript
微信小程序实现image组件图片自适应宽度比例显示的方法
2018/01/16 Javascript
angular写一个列表的选择全选交互组件的示例
2018/01/22 Javascript
如何在js代码中消灭for循环实例详解
2018/07/29 Javascript
JavaScript时间与时间戳的转换操作实例分析
2018/12/07 Javascript
javascrit中undefined和null的区别详解
2019/04/07 Javascript
vue点击页面空白处实现保存功能
2019/11/06 Javascript
element-ui中按需引入的实现
2019/12/25 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
详解Vue2的diff算法
2021/01/06 Vue.js
Python比较两个图片相似度的方法
2015/03/13 Python
Python实现简单状态框架的方法
2015/03/19 Python
介绍Python中的__future__模块
2015/04/27 Python
浅谈python3中input输入的使用
2019/08/02 Python
Python命令行参数argv和argparse该如何使用
2021/02/08 Python
法国奢华女性时尚配饰网上商店:Monnier Frères
2016/08/27 全球购物
软件测试工程师面试问题精选
2016/10/28 面试题
消防应急演练方案
2014/02/12 职场文书
班长演讲稿范文
2014/04/24 职场文书
环保倡议书400字
2014/05/15 职场文书
廉洁家庭事迹材料
2014/05/15 职场文书
2015纪念九一八事变84周年演讲稿
2015/03/19 职场文书
纪检部部长竞选稿
2015/11/21 职场文书
公司晚会主持词
2019/04/17 职场文书