php简单防盗链实现方法


Posted in PHP onJuly 29, 2015

本文实例讲述了php简单防盗链实现方法。分享给大家供大家参考。具体如下:

<?php
$ADMIN = array(
  'defaulturl'=> 'http://blog.qita.in/images/banner-header.gif',
  //盗链返回的地址
  'url_1'   => 'http://blog.qita.in/file',
  'url_2'   => 'http://blog.qita.in/file1',
);
$okaysites = array(
 'http://qita.in',
  'http://blog.qita.in', //白名单
  'http://blog.qita.in/1.html',
);
$reffer = $_SERVER['HTTP_REFERER'];
if ($reffer) {
  $yes = 0;
  while (list($domain, $subarray) = each($okaysites)) {
    if (ereg($subarray, "$reffer")) {
      $yes = 1;
    }
  }
  $theu = 'url_' . $_GET['site'];
  $file = $_GET['file'];
  if ($ADMIN[$theu] and $yes == 1) {
  header("Location: $ADMIN[$theu]/$file");
  } else {
    header("Location: $ADMIN[defaulturl]");
  }
} else {
  header("Location: $ADMIN[defaulturl]");
}
print_r($_SERVER['HTTP_REFERER']);
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php的字符串用法小结
Jun 08 PHP
php设计模式 Observer(观察者模式)
Jun 26 PHP
php防止SQL注入详解及防范
Nov 12 PHP
php对二维数组按指定键值key排序示例代码
Nov 26 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
php判断访问IP的方法
Jun 19 PHP
PHP记录和读取JSON格式日志文件
Jul 07 PHP
浅析php如何实现App常用的秒发功能
Aug 03 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
Aug 01 PHP
浅析php如何实现爬取数据原理
Sep 27 PHP
PHP实现用session来实现记录用户登陆信息
Oct 15 PHP
laravel5环境隐藏index.php后缀(apache)的方法
Oct 12 PHP
如何用PHP来实现一个动态Web服务器
Jul 29 #PHP
php实现过滤字符串中的中文和数字实例
Jul 29 #PHP
php实现XSS安全过滤的方法
Jul 29 #PHP
php检查字符串中是否有外链的方法
Jul 29 #PHP
php数组比较实现查找连续数的方法
Jul 29 #PHP
PHP实现XML与数据格式进行转换类实例
Jul 29 #PHP
PHP获取某个月最大天数(最后一天)的方法
Jul 29 #PHP
You might like
php之curl设置超时实例
2014/11/03 PHP
thinkphp循环结构用法实例
2014/11/24 PHP
日常整理PHP中简单的图形处理(经典)
2015/10/26 PHP
CI框架中类的自动加载问题分析
2016/11/21 PHP
php pdo连接数据库操作示例
2019/11/18 PHP
基于MooTools的很有创意的滚动条时钟动画
2010/11/14 Javascript
Package.js  现代化的JavaScript项目make工具
2012/05/23 Javascript
js特殊字符转义介绍
2013/11/05 Javascript
js中数组(Array)的排序(sort)注意事项说明
2014/01/24 Javascript
多种方法实现load加载完成后把图片一次性显示出来
2014/02/19 Javascript
JavaScript按值删除数组元素的方法
2015/04/24 Javascript
初步使用bootstrap快速创建页面
2016/03/03 Javascript
JS实现颜色梯度与渐变效果完整实例
2016/12/30 Javascript
jQuery Plupload上传插件的使用
2017/04/19 jQuery
vue2.0 datepicker使用方法
2018/02/04 Javascript
解决修复npm安装全局模块权限的问题
2018/05/17 Javascript
bootstrap动态调用select下拉框的实例代码
2018/08/09 Javascript
JS实现字符串翻转的方法分析
2018/08/31 Javascript
javascript动态创建对象的属性详解
2018/11/07 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
BootstrapValidator实现表单验证功能
2019/11/08 Javascript
vue-preview动态获取图片宽高并增加旋转功能的实现
2020/07/29 Javascript
vue keep-alive实现多组件嵌套中个别组件存活不销毁的操作
2020/10/30 Javascript
[13:40]TI3青蛙君全程回顾 DOTA2我们为梦想再战
2013/09/13 DOTA
Python 比较两个数组的元素的异同方法
2017/08/17 Python
详谈Python 窗体(tkinter)表格数据(Treeview)
2018/10/11 Python
python3实现斐波那契数列(4种方法)
2019/07/15 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
2019/07/26 Python
python 插入日期数据到Oracle实例
2020/03/02 Python
如何基于python对接钉钉并获取access_token
2020/04/21 Python
python实现猜数游戏(保存游戏记录)
2020/06/22 Python
Expedia马来西亚旅游网站:廉价酒店,度假村和航班预订
2016/07/26 全球购物
高中毕业生自我鉴定范文
2013/09/26 职场文书
汽车销售顾问求职自荐信
2014/01/01 职场文书
社区工作者思想汇报
2014/01/13 职场文书
导游词之河姆渡遗址博物馆
2019/10/10 职场文书