找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
教程经验总索引TVMW5/小日本5 索引【视频转换】小日本4/TE4XP 索引【视频转换】TAW4 / TDA3 索引【DVD打包软件】
Nero 索引DVD-Lab 索引【DVD打包软件】编解码器 索引 【必读】固顶帖011号
查看: 101|回复: 0

[Discuz!论坛] Discuz后台设置指定 IP 允许访问把管理员给禁了怎么办

[复制链接]
  • 打卡等级:热心大叔

9335

威望

2795

金钱

1万

贡献

管理员

自由的灵魂

积分
102611
主题
5370
回帖
26389
注册时间
2003-4-10
最后登录
2026-1-21
发表于 2025-12-7 11:46:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
原理:

在 Discuz! X3.5 中,后台设置「指定 IP 允许访问」的功能是通过 common_setting 表来存储配置的。

具体来说:

  • 设置路径:后台 → 全局 → 安全验证 → IP 访问限制
  • 当你启用了“仅允许以下 IP 访问站点”并填写了 IP 列表后,Discuz 会将这些 IP 保存在数据库的 common_setting 表中,字段名为 setting,对应的 skey(键名)为 accesslist




解决方法

如果你把自己 IP 错误地排除在外,导致无法登录后台,可以通过以下方式恢复:

方法一:直接清空 IP 限制(推荐)

  • 登录你的数据库(如 phpMyAdmin、MySQL 命令行等)。
  • 找到 Discuz 的数据库,执行以下 SQL 语句:

  1. DELETE FROM `common_setting` WHERE `skey` = 'accesslist';
复制代码

或者,也可以更新为空值(保留记录但清空内容):

  1. UPDATE `common_setting` SET `svalue` = '' WHERE  `skey` = 'accesslist';
复制代码
注意:svalue 字段存储的是序列化后的字符串(通常是 PHP 序列化格式),如果只是想临时关闭限制,也可以直接删除该行或设为空。

  • 清除缓存(可选):
    • 删除 data/cache/ 目录下的 cache_setting.php 文件;
    • 或者访问 你的网站/tools/updatecache.php(需开启开发者工具或手动创建)。





方法二:通过 config.inc.php 临时绕过(高级)

Discuz 的 IP 限制是在程序运行时读取 common_setting 缓存的。如果你无法访问后台也无法操作数据库,可以尝试临时修改源码跳过验证(不推荐长期使用):

source/class/discuz/discuzapplication.php 中找到类似如下代码段(X3.5 大概在 initmisc()init_setting() 部分):

  1. if($_G['setting']['accesslist'] && !in_array($_G['clientip'], $_G['setting']['accesslist'])) {
  2.     exit('Access denied.');
  3. }
复制代码


你可以临时注释掉这段代码,恢复访问后再通过后台或数据库修复设置。




补充说明

  • common_setting 表结构简要:
    • skey:配置项名称(如 accesslist
    • svalue:配置值(PHP 序列化格式,例如 a:2:{i:0;s:9:"192.168.1.1";i:1;s:9:"10.0.0.1";}
  • 如果你不确定自己的 IP 是否被正确包含,建议先通过其他设备或网络确认当前公网 IP。




来源:千问
IsaacZ的发言中如果提到任何字母缩写或专有名词,在本论坛中一般都能搜索到。点此立即搜索点拨论坛。如有搜索不到的,请尝试问AI,或者跟帖提问。
发帖前请注意看置顶帖。如果你发现自己的问题没有得到回答,说明你的问题提错了地方或者提问前未先阅读版规。
发现掉链,请直接回帖报告。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|点拨论坛 |网站地图|网站地图🛡️ 实时安全防护状态

GMT+8, 2026-1-21 14:51 , Processed in 0.072339 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表