雲優CMS後(hòu)台登錄獲取不到IP如何處理?

發(fā)布日期:2018-11-28 作者:雲優CMS 人氣:4912

場景:個别情況因爲服務器或其他原因不能(néng)獲取IP,會(huì)顯示127.0.0.1  這(zhè)時可以改動代碼解決此類問題


處理文件:\app\common.php

function writelog($uid,$username,$description,$status)
{
    $data['admin_id'] = $uid;
    $data['admin_name'] = $username;
    $data['description'] = $description;
    $data['status'] = $status;
    $data['ip'] = request()->ip();
    $data['add_time'] = time();
    $log = db('Log')->insert($data);
}

替換成(chéng)

function defip() {
    //strcasecmp 比較兩(liǎng)個字符,不區分大小寫。返回0,>0,<0。
    if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
        $ip = getenv('HTTP_CLIENT_IP');
    } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
        $ip = getenv('HTTP_X_FORWARDED_FOR');
    } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
        $ip = getenv('REMOTE_ADDR');
    } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
        $ip = $_SERVER['REMOTE_ADDR'];
    }
    $res =  preg_match ( '/[\d\.]{7,15}/', $ip, $matches ) ? $matches [0] : '';
    return $res;
}

function writelog($uid,$username,$description,$status)
{
    $data['admin_id'] = $uid;
    $data['admin_name'] = $username;
    $data['description'] = $description;
    $data['status'] = $status;
    $data['ip'] = defip();//request()->ip();
    $data['add_time'] = time();
    $log = db('Log')->insert($data);
}

相關新聞

返回頂部

撥打電話
在線咨詢
掃碼添加微信咨詢産品相關問題

全國(guó)統一服務電話: 0511-85995956