AgentCheckBehavior.class.php 1.0 KB

123456789101112131415161718192021222324252627
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | ThinkPHP [ WE CAN DO IT JUST THINK IT ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2009 http://thinkphp.cn All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
  8. // +----------------------------------------------------------------------
  9. // | Author: liu21st <liu21st@gmail.com>
  10. // +----------------------------------------------------------------------
  11. namespace Behavior;
  12. /**
  13. * 行为扩展:代理检测
  14. */
  15. class AgentCheckBehavior
  16. {
  17. public function run(&$params)
  18. {
  19. // 代理访问检测
  20. $limitProxyVisit = C('LIMIT_PROXY_VISIT', null, true);
  21. if ($limitProxyVisit && ($_SERVER['HTTP_X_FORWARDED_FOR'] || $_SERVER['HTTP_VIA'] || $_SERVER['HTTP_PROXY_CONNECTION'] || $_SERVER['HTTP_USER_AGENT_VIA'])) {
  22. // 禁止代理访问
  23. exit('Access Denied');
  24. }
  25. }
  26. }