php简单防盗链实现方法

yipeiwu_com7年前PHP代码库

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

<?php
$ADMIN = array(
  'defaulturl'=> '/zb_users/upload/202003/fy4db2ovh1y.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连接函数implode与分割explode的深入解析

目前学习php的人有很多,很多进行php培训的朋友在学习中总会问到这样一个问题:php连接函数implode是什么呢?php可以将字符串分割成数组,同时翻过了也可以将数组连接成字符串,确...

php常用数学函数汇总

本文实例汇总并分析了php常用数学函数。分享给大家供大家参考。具体分析如下: abs()函数定义和用法: 返回一个数的绝对值. 语法:abs(x),代码如下: 复制代码 代码如下:$ab...

php获取ip及网址的简单方法(必看)

如下所示: echo 'http://'.$_SERVER['HTTP_HOST'];输出您访问网址的域名 echo $benji_ip=gethostbyname($_ENV['C...

PHP提取字符串中的图片地址[正则表达式]

复制代码 代码如下: <?php $str='<p><img border="0" src="upfiles/2009/07/1246430143_1.jpg"...

PHP异常处理定义与使用方法分析

本文实例讲述了PHP异常处理定义与使用方法。分享给大家供大家参考,具体如下: <?php //php5提供了基本的异常处理类,可直接使用 ,不需要自己再定义 // cl...