通过后台设置(最推荐,最安全)

这是最标准、最安全的方法,适用于所有 DedeCMS 版本。

dedecms 关闭模板缓存
(图片来源网络,侵删)
  1. 登录后台:使用你的管理员账号登录 DedeCMS 后台管理界面。

  2. 进入系统设置:在左侧菜单栏中找到并点击 【系统】 -> 【系统基本参数】

  3. 修改模板缓存设置

    • 在打开的“系统基本参数”页面中,切换到 【核心设置】 选项卡。
    • 找到名为 “模板缓存开关” 的选项。
    • 将其值从 修改为
  4. 保存设置:页面最下方点击 【保存】 按钮。

    dedecms 关闭模板缓存
    (图片来源网络,侵删)

完成! 设置完成后,DedeCMS 将不再生成和读取模板缓存文件,当你再次访问网站时,它会直接解析你的模板文件,从而实现即改即见的效果。

注意:此设置只对 新访问 的页面生效,对于已经访问过并被缓存的页面,你可能需要清空浏览器缓存或强制刷新(Ctrl+F5)才能看到效果。


直接修改配置文件(适合开发者)

如果你习惯直接修改代码,或者后台权限受限,可以直接修改核心配置文件 config.cache.inc.php

  1. 找到文件:通过 FTP 或文件管理器,进入你的网站根目录,然后进入 include 文件夹,找到 config.cache.inc.php 文件。
  2. 编辑文件:用代码编辑器(如 VS Code, Sublime Text, Notepad++)打开该文件。
  3. 修改参数:找到下面这一行:
    $cfg_tplcache = 'Y';

    将其修改为:

    $cfg_tplcache = 'N';
    • 'Y' 代表开启缓存。
    • 'N' 代表关闭缓存。
  4. 保存文件:保存并上传回服务器(如果是在本地编辑)。

完成! 这种方法与方法一的效果完全相同,都是通过修改核心配置来实现的。


清空现有缓存文件(临时解决问题)

有时候你只是想临时清除一下缓存,而不是永久关闭,你可以手动删除缓存目录下的所有文件。

  1. 找到缓存目录:通过 FTP 或文件管理器,进入你的网站根目录,找到 data 文件夹,进入其中的 template 文件夹。
    • 路径通常是:你的网站根目录/data/template/
  2. 删除缓存文件template 目录下会有很多以 .tpl.php 结尾的文件,这些就是模板缓存文件,你可以 删除所有这些 .tpl.php 文件
    • 重要提示不要删除 template 目录本身,也不要删除里面的 index_cache.inc.php 文件(这个是系统配置缓存,删除后后台会自动重建)。

完成! 删除后,网站下次访问时会重新生成这些缓存文件,这是一种临时的、一次性的清空操作。


修改模板引擎文件(彻底禁用,不推荐)

这种方法会从根本上禁用模板缓存功能,强烈不建议在生产环境(已上线的网站)中使用,因为它会严重影响网站性能,仅在需要频繁调试且无法忍受任何缓存延迟的开发环境中使用。

  1. 找到文件:进入 include 目录,找到 dedetemplate.class.php 文件。

  2. 编辑文件:搜索文件中的 LoadTemplate 函数,找到生成缓存文件名的代码段,通常在函数开头部分。

  3. 注释或修改代码:找到类似下面的代码:

    // 获取模板缓存文件名
    $tplfile = $this->template_dir.'/'.$filename.'.php';
    $cachefile = $this->cache_dir.'/'.$this->templateid.'_'.$filename.'.tpl.php';

    你可以将 $cachefile 的值直接指向一个不存在的文件,或者干脆让程序不使用缓存文件,一个简单的“障眼法”是修改缓存文件名,使其永远不会被命中:

    // 修改前
    // $cachefile = $this->cache_dir.'/'.$this->templateid.'_'.$filename.'.tpl.php';
    // 修改后,让缓存文件名永远和真实文件不一致
    $cachefile = $this->cache_dir.'/'.$this->templateid.'_'.$filename.'.tpl.php.random'; 

    这样一来,程序每次都会认为缓存文件不存在,从而重新解析模板。

  4. 保存文件:保存并上传回服务器。


总结与建议

方法 优点 缺点 适用场景
后台设置 安全、标准、可逆 需要登录后台 所有场景,尤其是网站开发调试
修改配置文件 直接、快速,适合开发者 需要文件操作权限 方法一的替代方案,习惯直接操作代码的开发者
删除缓存文件 简单、直接,不影响系统 效果是临时的,需手动操作 临时解决某个页面缓存不更新的问题
修改引擎文件 彻底禁用,一劳永逸 风险高,严重影响性能,不推荐 极端开发环境,对性能无要求

最佳实践: 在网站 开发或调试阶段,请使用 方法一方法二 关闭模板缓存。 当网站 正式上线后,请务必 开启模板缓存(改回 Y),因为模板缓存可以极大地提升网站的访问速度和服务器性能,减轻数据库压力。