第一步:检查最常见的原因 - 缓存问题
这是导致DedeCMS主页空白的首要原因,DedeCMS为了提升速度,会生成大量的静态缓存和动态缓存。

(图片来源网络,侵删)
解决方案:
-
手动更新主页缓存:
- 登录您的DedeCMS后台。
- 在左侧菜单栏找到 “主页” -> “主页更新”。
- 在打开的页面中,勾选 “仅更新主页HTML”,然后点击 “开始更新” 按钮。
- 等待更新完成,然后刷新网站前台查看。
-
清除所有缓存:
- 如果上一步无效,请清除所有缓存。
- 在后台左侧菜单栏找到 “系统” -> “系统基本参数”。
- 在参数设置页面的右上角,找到并点击 “性能选项” 标签页。
- 您可以找到 “清除所有缓存” 的按钮,点击它。
- 请检查您的网站根目录下是否有
/data/cache/文件夹,里面的文件(特别是~cfg_cache.inc.php和~homecache.inc.php等)可以尝试删除。(注意:删除前最好备份一下这个文件夹)。
第二步:检查模板文件和标签错误
如果缓存清除后问题依旧,很可能是主页模板文件(index.htm)或者模板中使用的DedeCMS标签出现了错误。
解决方案:
-
检查模板文件是否存在:
(图片来源网络,侵删)- 通过FTP或文件管理器,进入您的网站根目录下的
/templets/default/文件夹(如果您的模板不是default,请进入对应的文件夹)。 - 确认
index.htm文件是否存在,如果不存在,请从您的DedeCMS安装包中复制一个回来。
- 通过FTP或文件管理器,进入您的网站根目录下的
-
检查模板语法错误(最关键的一步):
-
方法A:使用“禁用主页面模板”功能排查
- 登录后台,进入 “系统” -> “系统基本参数” -> “核心设置”。
- 找到 “主页模板风格文件” 这一项,将其值修改为一个绝对不会存在的文件名,
index_not_found.htm。 - 保存后,刷新网站前台,如果现在网站显示了DedeCMS的默认错误提示(而不是空白页),那就100%是模板文件
index.htm的问题。 - 请用专业的代码编辑器(如VS Code, Dreamweaver)打开
index.htm文件,仔细检查里面的DedeCMS标签(如{dede:arclist},{dede:channel},{dede:include}等)是否有拼写错误、缺少闭合标签、或者使用了不存在的属性,特别注意{dede:php}...{/dede:php}标签中的PHP代码是否有语法错误。 - 修复错误后,再将“主页模板风格文件”改回
index.htm并更新主页。
-
方法B:直接检查PHP错误日志
- 空白页通常意味着PHP代码执行时遇到了致命错误,导致脚本中断,所以没有输出任何内容。
- 请联系您的虚拟主机服务商,或者登录服务器,查看网站的 PHP错误日志,日志文件通常位于
/var/log/php_errors.log或者在cPanel面板的 "Error Log" 中。 - 日志会明确告诉你哪一行代码、哪个文件出了什么错误(
Fatal error: Call to undefined function...或Parse error: syntax error...),根据错误提示去修改对应的模板文件或PHP文件即可。
-
第三步:检查PHP版本和函数兼容性
如果您最近升级了服务器的PHP版本,DedeCMS(尤其是旧版本)可能会因为不兼容而出现空白。

(图片来源网络,侵删)
解决方案:
- 检查PHP版本: 确认您服务器当前的PHP版本。
- 检查禁用的函数: 登录虚拟主机控制面板(如cPanel),找到“PHP版本管理”或类似选项,查看是否禁用了DedeCMS依赖的函数,
preg_replace,如果被禁用,请将其启用。 - 降级PHP版本: 如果您使用的是PHP 7.4以上版本(如PHP 8.0, 8.1),而您的DedeCMS版本非常旧(如DedeCMS 5.7),建议将PHP版本降级到 PHP 7.2 或 7.3,这个版本的PHP对DedeCMS的兼容性最好。
第四步:检查文件权限和完整性
文件权限错误或文件上传不完整也可能导致空白。
解决方案:
- 检查文件权限:
- 通过FTP或SSH连接服务器,确保网站根目录下的以下文件夹和文件具有正确的权限:
/data/文件夹及其所有子文件夹和文件:权限设置为 755 或 777(如果777能解决问题,为了安全,后续再改回755)。/templets/文件夹:权限 755。/html/文件夹(存放生成的静态文件):权限 755。- 所有
.php文件:权限 644。 - 所有文件夹:权限 755。
- 通过FTP或SSH连接服务器,确保网站根目录下的以下文件夹和文件具有正确的权限:
- 重新上传核心文件:
- 通过FTP上传文件可能会因为网络问题导致文件损坏。
- 下载一个与您网站版本完全一致的DedeCMS安装包。
- 不要覆盖您的
/data/、/uploads/、/templets/等文件夹。 - 只将安装包根目录下的核心PHP文件(如
index.php,list.php,article_article.php等)和/include/目录下的文件,通过FTP重新上传到您的网站根目录,覆盖旧的文件。
第五步:检查数据库连接
如果以上方法都无效,有可能是数据库连接信息出了问题。
解决方案:
- 检查网站根目录下的
/data/common.inc.php文件。 - 用代码编辑器打开它,检查里面的数据库连接信息是否正确:
$cfg_dbhost: 数据库主机地址(通常是localhost)$cfg_dbname: 数据库名$cfg_dbuser: 数据库用户名$cfg_dbpwd: 数据库密码$cfg_dbprefix: 数据表前缀
- 确保这些信息与您的虚拟主机数据库信息完全一致,如果不确定,可以到虚拟主机后台重新获取数据库信息并更新此文件。
总结与排查流程建议
遇到DedeCMS主页空白,请按以下顺序排查,这能帮你最高效地解决问题:
- 第一步(首选): 后台 “主页更新” -> “清除所有缓存”,解决率80%。
- 第二步(核心): 修改 “核心设置” 中的主页模板为不存在的文件名,看是否报错,如果报错,则问题在模板文件
index.htm,检查标签和PHP代码。 - 第三步(环境): 检查服务器 PHP版本 和 禁用函数,尝试降级PHP。
- 第四步(文件): 检查 文件权限,并重新上传核心PHP文件。
- 第五步(数据库): 检查
/data/common.inc.php数据库连接信息。
如果所有步骤都尝试过问题依旧,那么可能是服务器环境配置(如php.ini、httpd.conf)或更深层次的代码bug,建议联系您的服务器技术支持或DedeCMS社区寻求帮助。
