第一步:检查PHP执行是否出错(最常见原因)
空白页通常意味着PHP代码在执行时遇到了致命错误,但错误信息被隐藏了,我们需要让错误信息显示出来。

(图片来源网络,侵删)
- 登录你的网站FTP或主机控制面板文件管理器。
- 找到并编辑
/include/common.inc.php文件。 - 在文件中找到这一行:
@ini_set('display_errors', '0'); - 将其修改为:
@ini_set('display_errors', '1'); - 保存文件。
- 再次去你的后台更新首页。
- 回到网站首页查看,如果现在出现了错误提示信息(
Fatal error: Call to undefined function...或者Parse error...),那么问题就找到了,根据错误信息去搜索解决方案,或者检查你最近修改过的模板文件、插件或配置。
排查完问题后,记得一定要把 display_errors 改回 0,否则会暴露网站路径和敏感信息,存在安全风险!
第二步:清理所有缓存
DedeCMS有多个层级的缓存,任何一个没有清理干净都可能导致页面空白。
-
后台缓存清理:
- 登录DedeCMS后台。
- 点击菜单栏的 “系统” -> “一键更新网站”。
- 在打开的页面中,勾选 “更新主页HTML”,然后点击 “开始更新”,这个过程会强制重新生成首页HTML文件,并清理相关的系统缓存。
-
模板缓存清理:
(图片来源网络,侵删)- 仍然在后台,点击 “系统” -> “系统设置” -> “系统基本参数”。
- 在左侧菜单选择 “性能选项”。
- 找到 “是否开启模板缓存” 选项,确保它是 “是”。
- 点击页面底部的 “提交” 按钮,这会强制系统重新编译模板文件。
-
手动删除缓存目录(非常重要):
- 通过FTP或文件管理器,删除以下两个目录下的所有文件(注意是目录里的文件,不要删目录本身):
/templets/目录下的cache/文件夹。/data/目录下的cache/文件夹。
- 删除后,重新访问网站并更新首页。
- 通过FTP或文件管理器,删除以下两个目录下的所有文件(注意是目录里的文件,不要删目录本身):
第三步:检查首页模板文件
你的首页模板文件可能存在语法错误,导致PHP解析失败。
-
检查模板路径:
- 登录后台,点击 “主页” -> “主页管理”。
- 查看你的默认主页模板文件名是什么,通常是
default/index.htm。 - 通过FTP,进入
/templets/目录,找到对应的模板文件夹(如default),然后检查里面的index.htm文件。
-
检查模板语法:
(图片来源网络,侵删)- 检查PHP闭合标签:确保没有多余的
?>结束标签,在模板文件末尾,如果只有PHP代码,通常建议省略?>,以避免意外的空格或换行导致的问题。 - 检查Dede标签:检查
{dede:}系列标签是否拼写正确,标签的属性(如row、col)是否正确。 - 检查引入的文件:检查模板中是否引入了其他文件,如
{dede:include filename='head.htm' /},确保被引入的文件存在且路径正确。 - 使用代码编辑器打开:用专业的代码编辑器(如 VS Code, Sublime Text, Notepad++)打开
index.htm文件,编辑器通常会高亮显示语法错误。
- 检查PHP闭合标签:确保没有多余的
第四步:检查文件权限
文件权限不正确也可能导致无法写入或读取文件,从而出现空白。
- 通过FTP或主机控制面板,检查并设置以下目录和文件的权限为
755,文件权限为644。- (网站根目录) ->
755 /templets/->755/data/->755(这个目录很重要)/arclist/->755/special/->755/html/->755(存放生成的HTML文件)- 所有
.php文件 ->644 - 所有
.htm文件 ->644
- (网站根目录) ->
第五步:检查插件或自定义修改
如果你最近安装了新插件、修改了核心文件或更新了DedeCMS版本,这很可能是原因所在。
- 禁用插件:尝试将
/data/cache/目录下的插件缓存文件(通常是*.php文件)重命名(如改为disabled_plugins.php),然后更新首页看是否恢复,如果恢复了,说明是某个插件的问题,逐一排查。 - 恢复默认模板:将模板文件恢复为系统默认的
default模板,看问题是否解决,如果解决,说明是你自定义的模板有问题。 - 检查核心文件:回想一下是否修改过
/include/目录下的任何文件,特别是arc.partview.class.php(负责视图解析,和首页生成关系极大),可以尝试从一个干净的DedeCMS安装包中,用原版的同名文件覆盖你的。
总结与最终建议
排查顺序:第一步 > 第二步 > 第三步 > 第四步 > 第五步。
如果以上所有方法都试过了问题依旧,那么可以尝试以下“大招”:
- 备份数据库和网站文件。
- 重新上传一个干净的DedeCMS程序文件(只上传程序文件,不覆盖
/data/目录和/templets/目录,以免覆盖你的数据和模板)。 - 然后再次执行上述步骤,特别是清理缓存和检查模板。
希望这些步骤能帮助你解决问题!
