php简单防盗链实现方法

 更新时间:2015年07月29日 14:46:04   作者:DDIAN  
这篇文章主要介绍了php简单防盗链实现方法,涉及php针对服务器端预定义变量调用及字符串处理的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了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防注入代码

    一直搞.net ,最近研究PHP,也涉及到防注入的安全措施,和.net的大同小异,从网上摘回一篇,作为备注,以供自己需要时查阅。
    2010-04-04
  • 深入理解PHP中的global

    深入理解PHP中的global

    这篇文章主要介绍了深入理解PHP中的global,用简明的语言描述global的实现原理和作用,并给出了代码示例,需要的朋友可以参考下
    2014-08-08
  • PHP+RabbitMQ实现消息队列的完整代码

    PHP+RabbitMQ实现消息队列的完整代码

    这篇文章主要给大家介绍了关于利用PHP+RabbitMQ实现消息队列的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用PHP具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • PHP折半(二分)查找算法实例分析

    PHP折半(二分)查找算法实例分析

    这篇文章主要介绍了PHP折半(二分)查找算法,结合实例形式较为详细的分析了php折半(二分)查找算法的概念、原理、实现与使用方法,并附带了一个php折半(二分)查找算法类供大家参考,需要的朋友可以参考下
    2018-05-05
  • php下mysql数据库操作类(改自discuz)

    php下mysql数据库操作类(改自discuz)

    这是php mysql的数据库操作类,取自discuz,经过修改后可以用于其它程序了,并且有足够的注释,大家可以借鉴研究下.
    2010-07-07
  • PHP获取文件夹内文件数的方法

    PHP获取文件夹内文件数的方法

    这篇文章主要介绍了PHP获取文件夹内文件数的方法,涉及php操作文件夹及文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • 浅谈PHP7中的一些小技巧

    浅谈PHP7中的一些小技巧

    PHP7显著提高了整体性能。实际上主要的特性有null合并运算符或返回类型声明。如果你不知道它们,那么你应该去查看PHP文档。这里有一些很少人知道的、可能有用的特性。
    2021-05-05
  • 如何在thinkphp中使用windows计划任务定时执行php文件

    如何在thinkphp中使用windows计划任务定时执行php文件

    这篇文章主要介绍了如何在thinkphp中使用windows计划任务定时执行php文件,对定时执行感兴趣的同学,可以参考下
    2021-04-04
  • PHP批量上传图片的具体实现方法介绍.

    PHP批量上传图片的具体实现方法介绍.

    这篇文章主要介绍了PHP批量上传图片的具体实现方法。需要的朋友可以过来参考下,希望对大家有所帮助
    2014-02-02
  • ThinkPHP Where 条件中常用表达式示例(详解)

    ThinkPHP Where 条件中常用表达式示例(详解)

    下面小编就为大家带来一篇ThinkPHP Where 条件中常用表达式示例(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03

最新评论