discuz! X3.5版本在处理IP获取时采取了更严格的措施,默认只信任直接访问网站的IP。对于使用CDN/代理的网站,这可能导致获取的IP与实际请求者的IP不符。网站后台出于安全考虑,会验证用户IP,如果IP变动,用户会被自动退出。解决方法包括配置IP获取功能以获取真实IP(推荐方法)和关闭后台IP验证(不推荐,会降低安全性)。配置方法包括修改相关配置文件,如config_global.php和uc_server/data/config.inc.php。此外,还有其他关于后台登录的教程和问题解决方式。

 

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

如何确定自己网站获取的IP是否正确:
登录自己的网站账号,点进个人主页查看资料,看里面显示的IP是否为自己的真实IP。

网站使用了CDN/WAF/负载均衡的,以及检查了IP获取发现是错的,请直接尝试方法一
如果IP没有错,而是自己所在的网络IP经常变化,才选择方法二。

解决办法一:配置IP获取功能,获取用户真实IP(推荐,注意dz和uc都要配置)

Discuz! X3.5 针对常见CDN/WAF/负载均衡,如何获取真实IP?
https://www.dismall.com/thread-15034-1-1.html

 

/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')));

 

Discuz!X3.5使用CDN时,获取用户真实IP
https://www.dismall.com/thread-14651-1-1.html

解决办法二:关闭后台IP验证(降低了安全性,不推荐)

取消后台登录IP验证,避免IP频繁变动无法登录或者频繁退出

IP频繁变动会导致后台无法登录,点击刷新一下还在登录页面,或者登录后没一会就自动退出(正常是30分钟没操作才退出)

打开 config\config_global.php
找到

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

改成
本帖隐藏的内容

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

可以取消IP验证

如果你的IP不会频繁变动,不要进行这个修改,这一定程度上降低了安全性

 

其他后台登录相关教程

关闭先登录前台才能登录后台,解决特殊情况无法进后台
https://www.dismall.com/thread-13951-1-1.html

Discuz!X3.5 忘记后台管理员密码的解决办法
https://www.dismall.com/thread-5180-1-1.html

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。