CHImageGuard PHP脚本代码的分享

CHImageGuard PHP脚本:
下面的PHP代码复制到一个ASCII文本文件并将其保存为“chimage.php”。具体的文件扩展名使用取决于您的web服务器。
更多信息可以找到如何配置和使用脚本后脚本。

注意脚本开始从“< ?php”(包括线)和结束“?>”(包括线)。不添加任何文本之前或之后这些标记(“< ?php”和“?”),否则你会遇到很多错误消息当您使用脚本。

<?php


  function isreferrerokay ( $referrer, $validprefixes )
  {
    $validreferrer = 0 ;
    $authreferrer  = current( $validprefixes );
    while ($authreferrer) {
      if (preg_match( "#^https?://$authreferrer/#i", $referrer )) {
        $validreferrer = 1 ;
        break ;
      }
      $authreferrer = next( $validprefixes );
    }
    return $validreferrer ;
  }

  //----------------------- main program -----------------------

  $image = $_GET['image'] ;
  $referrer = getenv( "HTTP_REFERER" );

  if (isset($_GET['image'])) {

    if (empty($referrer) ||
      isreferrerokay( $referrer, $validprefixes )) {

      $imagepath = $imagedir . $image ;

      $imageinfo = getimagesize( $imagepath );
      if ($imageinfo[2] == 1) {
        $imagetype = "gif" ;
      }
      elseif ($imageinfo[2] == 2) {
        $imagetype = "jpeg" ;
      }
      elseif ($imageinfo[2] == 3) {
        $imagetype = "png" ;
      }
      else {
        header( "HTTP/1.0 404 Not Found" );
        exit ;
      }

      header( "Content-type: image/$imagetype" );
      @readfile( $imagepath );

    }
    else {

      if (isset($email)) {
        mail( $email, "Bandwidth Theft Alert",
           "WARNING:\n\n$referrer\ntried to access\n$image\n",
           "From: CHImageGuard <$email>" );
      }
      header( "HTTP/1.0 404 Not Found" );
    }
  }
  else {
    header( "Location: $homepage" );
  }

?>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值