美文网首页
PHP非法访问重定向

PHP非法访问重定向

作者: 弗兰克万岁 | 来源:发表于2019-01-03 11:04 被阅读0次
<?php
/**
 * Created by PhpStorm.
 * User: frank
 * Date: 2019/1/3
 * Time: 14:01
 */
//获取客户端ip
function ip_ban()
{
    if (getenv("HTTP_CLIENT_IP"))
        $ip = getenv("HTTP_CLIENT_IP");
    else if (getenv("HTTP_X_FORWARDED_FOR"))
        $ip = getenv("HTTP_X_FORWARDED_FOR");
    else if (getenv("REMOTE_ADDR"))
        $ip = getenv("REMOTE_ADDR");
    else $ip = "Unknow";
    $ALLOWED_IP = array('10.144.39.132','192.168.1.*','localhost','127.0.0.*');
//允许访问的ip
    $check_ip_arr = explode('.', $ip);
//ip参数拆分成数组
    if (!in_array($ip, $ALLOWED_IP)) {
        $bl = false;
        foreach ($ALLOWED_IP as $val) {
            if (strpos($val, '*') !== false) {
                //发现有*号替代符
                $arr = array();
                $arr = explode('.', $val);
                $bl = true;
                //用于记录循环检测中是否有匹配成功的
                for ($i = 0; $i < 4; $i++) {
                    if ($arr[$i] != '*') {
                        //不等于* 就要进来检测,如果为*符号替代符就不检查
                        if ($arr[$i] != $check_ip_arr[$i]) {
                            $bl = false;
                            break;
                            //终止检查本个ip 继续检查下一个ip
                        }
                    }
                }
                //end for
                if ($bl) {
                    //如果是true则终止匹配
//                    break;
                    return 1;

                }
            }
        }
        //end foreach
        if (!$bl) {
            $return = array(
                'status' => 2,
                'msg' => '该IP无权限访问',
                'data' => $ip
            );
//            echo json_encode($return);
            return 0;
//            exit();
        }
    }
}
if(ip_ban()){

}
else{
    $return = array(
        'status' => 404,
        'msg' => '非法访问,已记录档案'
    );
    echo json_encode($return);

相关文章

网友评论

      本文标题:PHP非法访问重定向

      本文链接:https://www.haomeiwen.com/subject/oyqfrqtx.html