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函数,php爱好者站推荐
Mar 19 PHP
PHP 日期时间函数的高级应用技巧
Oct 10 PHP
数据库中排序的对比及使用条件详解
Feb 23 PHP
php mssql扩展SQL查询中文字段名解决方法
Oct 15 PHP
php实现utf-8和GB2312编码相互转换函数代码
Feb 07 PHP
PHP MySql增删改查的简单实例
Jun 21 PHP
基于PHP微信红包的算法探讨
Jul 21 PHP
替换php字符串中的单引号为双引号的方法
Feb 16 PHP
redirect_uri参数错误的解决方法(必看)
Feb 16 PHP
总结PHP中初始化空数组的最佳方法
Feb 13 PHP
PHP中Static(静态)关键字功能与用法实例分析
Apr 05 PHP
基于php伪静态的实现方法解析
Jul 31 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
php MySQL与分页效率
2008/06/04 PHP
php中使用gd库实现下载网页中所有图片
2015/05/12 PHP
ThinkPHP实现登录退出功能
2017/06/29 PHP
PHP ADODB实现分页功能简单示例
2018/05/25 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
2019/09/04 PHP
浅谈laravel框架sql中groupBy之后排序的问题
2019/10/17 PHP
详解JavaScript函数绑定
2013/08/18 Javascript
jquery.post用法之type设置问题
2014/02/24 Javascript
利用javascript实现全部删或清空所选的操作
2014/05/27 Javascript
使用node.js 获取客户端信息代码分享
2014/11/26 Javascript
jQuery实现的仿百度,仿谷歌搜索下拉框效果示例
2016/12/30 Javascript
JS中from 表单序列化提交的代码
2017/01/20 Javascript
图文详解Javascript中的上下文和作用域
2017/02/15 Javascript
原生javascript实现分页效果
2017/04/21 Javascript
Cropper.js 实现裁剪图片并上传(PC端)
2017/08/20 Javascript
JS实现的进制转换,浮点数相加,数字判断操作示例
2019/11/09 Javascript
微信小程序文章详情功能完整实例
2020/06/03 Javascript
JavaScript字符和ASCII实现互相转换
2020/06/03 Javascript
[01:05:29]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第二场 1月24日
2021/03/11 DOTA
Python生成随机密码
2015/03/10 Python
使用Python搭建虚拟环境的配置方法
2018/02/28 Python
Django中Model的使用方法教程
2018/03/07 Python
unittest+coverage单元测试代码覆盖操作实例详解
2018/04/04 Python
python实现向微信用户发送每日一句 python实现微信聊天机器人
2019/03/27 Python
在Python中使用filter去除列表中值为假及空字符串的例子
2019/11/18 Python
python openpyxl模块的使用详解
2021/02/25 Python
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
毕业生护理专业个人求职信范文
2014/01/04 职场文书
县政府班子个人对照检查材料
2014/10/05 职场文书
入党团支部推荐意见
2015/06/02 职场文书
三八妇女节主持词
2015/07/04 职场文书
导游词之广西漓江
2019/11/02 职场文书
MYSQL数据库使用UTF-8中文编码乱码的解决办法
2021/05/26 MySQL
java调用Restful接口的三种方法
2021/08/23 Java/Android
漫画「处刑少女的生存之道」第3卷封面公开
2022/03/21 日漫
画错魏国疆域啦!《派对咖孔明》动画因作画失误于官网致歉
2022/04/07 日漫