天府快车始于2005年,本站已累计为数万用户提供了质优价廉的域名注册,虚拟主机,云服务器产品和服务!
本站支持在线支付、自动充值、自动开通、自动续费,同时提供7*12小时在线售前咨询服务,7*24小时有问必答技术售后服务!
  虚拟主机域名注册-常见问题虚拟主机问题 → 虚拟主机问题


DISCUZ!1X 使用CDN后获取真实IP方法
作者:天府快车

DX 修改如下文件 /source/class/class_core.php

请下载  

class_core.rar


修改办法,在class_core.php中:


以下为官方原始代码

        function _get_client_ip1() {
                $clientip = '';
                if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
                        $clientip = getenv('HTTP_CLIENT_IP');
                } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
                        $clientip = getenv('HTTP_X_FORWARDED_FOR');
                } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
                        $clientip = getenv('REMOTE_ADDR');
                } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
                        $clientip = $_SERVER['REMOTE_ADDR'];
                }
 
                preg_match("/[\d\.]{7,15}/", $clientip, $clientipmatches);
                $clientip = $clientipmatches[0] ? $clientipmatches[0] : 'unknown';
                return $clientip;
        }

复制代码
以下代码是在网上找到的,已经通过我的测试,请大家看看是否会出现其他问题。

function _get_client_ip()   
global $_SERVER;
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"]))  
{
$realip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif (isset($_SERVER["HTTP_CLIENT_IP"]))  
{
$realip = $_SERVER["HTTP_CLIENT_IP"];
}
else  
{
$realip = $_SERVER["REMOTE_ADDR"];
}
return $realip;
}



来源: 天府快车
阅读:3552
日期:2011-12-05

【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:不加www的顶级域名如何解决?
下一篇:shopex网店主机申请绿卡授权的标准及流程
  >> 相关文章