← 我的灵感和代码 | 代码

Discuz! X3.5 后台无法登录的解决办法

首发时间: #

Discuz! X3.5 为了避免IP伪造,采用了更严格的IP获取方式,默认只信任直接访问网站的IP,这导致在默认配置下,使用了CDN/代理等的网站,获取到的IP为实际请求网站的CDN/代理对应的IP,而网站后台出于安全考虑,默认验证用户IP是否变动,变动会自动退出,而CDN/代理的IP一般会频繁变动。

如果用CF 按下面一键无脑修改即可

/config/config_global.php

$_config['admincp']['checkip'] = 1;

$_config['security']['onlyremoteaddr'] = 0;

$_config['ipgetter']['setting'] = 'header';
$_config['ipgetter']['header']['header'] = 'HTTP_CF_CONNECTING_IP';

 

uc_server/data/config.inc.php

define('UC_ONLYREMOTEADDR', 0);
define('UC_IPGETTER', 'header');
define('UC_IPGETTER_HEADER', serialize(array('header' => 'HTTP_CF_CONNECTING_IP')));

 

 

如果想看原理的看此文https://www.31du.cn/blog/discuz-x35-cdn.html

 

至于config['admincp']['checkip']看下面

 

Dz程序为了安全,有记录管理员经常登录的ip,当用户更换一个新的ip登录时,就会自动退出。那么该如何解决呢?

解决具体方式如下:

1、用ftp工具连接到您的空间,找到config/config_global.php文件,并下载到本地。

2、打开编辑config_global.php文件,找到以下这段代码:
$_config['admincp']['checkip'] = 1;
这段代码的意思是,是否检查管理员ip,1表示检测ip。将以上代码中的1改成0,保存。

3、将修改后的config_global.php重新上传覆盖旧的文件。

4、登录dz后台,更新一下文件,这样管理员登录自动退出的问题就得到解决了。通过取消ip检测的方法,使得在异地管理您的dz论坛不会出现ip检测,也就可以正常管理您的论坛了。

#