如何让discuz不显示用户的ip?

2024-12-14 20:00:03
推荐回答(4个)
回答1:

打开include/common.inc.php,在大约86行。找到以下代码

if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$onlineip = getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$onlineip = $_SERVER['REMOTE_ADDR'];
}

在本段代码前面加上/*,最后加上*/,这样转为注释。就相当于删除了。你真的永远不需要了的话,那就直接删掉吧。然后就不会记录$onlineip(在线IP)了。

回答2:

这个可以解决,在程序里面对获取IP的函数该一下,或者是取消掉,这个需要对dz的程序模块要比较熟悉的

回答3:

1、基本上没可能,除非做出大修改,管理员默认可以查看所有人IP

2、除管理员外,其他用户组都可以禁止查看IP

3、所以说,只设一个管理员一定程度上解决问题。。。

回答4:

用代理