排查步骤
第一步:检查核心文件权限(最常见的原因)
网站名称保存在数据库中,但修改操作需要写入一个缓存文件来更新前台显示,如果这个缓存文件没有写入权限,就会导致保存失败。

(图片来源网络,侵删)
你需要确保以下两个关键文件具有可写权限(通常是 755 或 644,具体取决于服务器环境):
-
/data/common.inc.php- 这是 DedeCMS 的核心配置文件,存储了网站的基本信息,包括网站名称。
- 权限设置:设置为
755或644。755不行,可以尝试777(临时解决,但存在安全风险,解决后务必改回)。
-
/data/cache_config.php- 这是配置信息的缓存文件,前台页面通常从这个文件读取网站名称,而不是直接读数据库。
- 权限设置:同上,设置为
755或644。
如何修改权限?

(图片来源网络,侵删)
- 通过 FTP 客户端:右键点击文件,选择“文件权限”,然后输入数字。
- 通过主机面板:在文件管理器中找到文件,修改其权限。
- 通过 SSH (Linux服务器):使用
chmod命令。# 给 common.inc.php 和 cache_config.php 设置 755 权限 chmod 755 /data/common.inc.php chmod 755 /data/cache_config.php
第二步:检查目录权限
除了文件,/data 目录本身也必须具有可写权限,因为程序需要在这个目录里创建和修改文件。
- 目录
/data:- 权限设置:通常设置为
755。 - 重要:确保目录的所有者是运行网站的用户(如
www-data,nginx,apache等),而不是root,如果所有者不对,即使权限是 777 也可能无法写入。
- 权限设置:通常设置为
第三步:检查数据库字段权限(较少见但可能)
如果以上步骤无效,可能是数据库用户对 dede_sysconfig 表(或你自定义前缀的对应表)的 value 字段没有写入权限。
- 登录你的数据库管理工具(如 phpMyAdmin)。
- 找到你的 DedeCMS 数据库。
- 找到存储系统配置的表,通常是
dede_sysconfig(dede_是默认前缀,请根据你的实际情况修改)。 - 检查
varname字段为cfg_webname的那条记录。 - 尝试直接在 phpMyAdmin 中修改
value字段的值,看是否能成功保存。- 如果这里也无法保存,说明你的数据库用户(如
dede_user)缺少对该表的UPDATE权限,你需要联系你的主机服务商,为该数据库用户授予dede_sysconfig表的完全权限(SELECT, INSERT, UPDATE, DELETE)。
- 如果这里也无法保存,说明你的数据库用户(如
第四步:清除缓存并检查浏览器
浏览器缓存或 DedeCMS 的内部缓存会导致页面显示的不是最新数据,造成“没保存成功”的假象。
- 清除浏览器缓存:按
Ctrl + F5强制刷新页面,或者打开浏览器的“无痕/隐私模式”再尝试保存。 - 清空 DedeCMS 缓存:
- 登录 DedeCMS 后台。
- 进入 【系统】->【系统基本参数】->【性能选项】。
- 找到 “是否开启页面静态化” 和 “是否开启浏览器缓存” 相关的选项,可以临时关闭它们。
- 或者,直接删除
/data/cache/目录下的所有缓存文件(.php文件)。(注意:这会导致后台重新生成一些缓存文件,是安全的操作)。
第五步:检查模板文件(可能性较低)
网站名称通常通过 {dede:global.cfg_webname/} 这个全局标签调用,检查你的首页模板(通常是 /templets/default/index.htm)或其他模板文件中,是否正确使用了这个标签。

(图片来源网络,侵删)
- 如果标签被错误地修改或删除,前台会显示不出来,但这通常不会导致后台无法保存,检查一下总没错。
第六步:排查插件或代码冲突
如果你最近安装了某个插件或修改了核心文件,可能会导致冲突。
- 尝试禁用所有插件:如果后台有插件管理功能,尝试将所有非官方插件禁用,然后再次尝试保存。
- 恢复核心文件:如果你修改过
/include/common.inc.php或其他核心文件,尝试从官方下载一个对应版本的 DedeCMS,覆盖你修改过的文件(注意:操作前务必备份!)。
总结与建议
按照以下顺序操作,可以高效地解决问题:
- 首要检查:修改
/data/common.inc.php和/data/cache_config.php的权限为755,这是 80% 以上情况的原因。 - 其次检查:确保
/data目录权限为755,并且所有者正确。 - 再次检查:清除浏览器缓存和 DedeCMS 的
/data/cache/缓存。 - 最后检查:如果以上都无效,再考虑数据库权限和插件冲突问题。
如果所有方法都试过了还是不行,建议你提供以下信息,以便更精准地定位问题:
- DedeCMS 的具体版本号(如 DedeCMS V5.7 SP2 UTF8)。
- 服务器环境(如 Linux + Apache/Nginx + PHP 7.4)。
- 是完全点击保存没反应,还是提示了具体的错误信息(哪怕是一闪而过的)。
希望这些步骤能帮助你解决问题!
