thinkphp 5.0 默认缓存目录为 runtime/cache/,需确保 web 服务器用户对该目录有写权限;键值缓存存于此,请求缓存存于 runtime/request_cache/,模板缓存存于 runtime/temp/,日志缓存存于 runtime/log/;可通过 php think clear 清空全部缓存,或分别清理指定目录,亦支持代码级精确清除。

ThinkPHP 5.0 的默认缓存目录是 runtime/cache/,位于应用根目录下的 runtime 文件夹内。这个路径可配置,但绝大多数项目使用默认设置。
缓存目录的结构和定位
默认完整路径为:
your_project_path/runtime/cache/
其中:
-
runtime/目录需具备写入权限(Web 服务器用户如 www-data 或 nginx 必须可写) -
cache/是通用键值对缓存(如Cache::set()写入的数据)存放位置,内部按哈希前缀分层(如7e/58d63b60197ceb55a1c487989a3720.php) - 请求缓存(HTML 静态化)默认存放在
runtime/request_cache/(非cache/下),需单独注意 - 模板缓存则在
runtime/temp/,日志缓存在runtime/log/
手动删除缓存的三种常用方式
推荐按需选择,避免误删其他运行时数据:
-
清空全部缓存(含键值、模板、日志):
执行php think clear命令(需在项目根目录运行)。该命令会清理runtime/cache/、runtime/temp/、runtime/log/等所有子目录内容 -
仅删除键值缓存(即
Cache::set()类型):
进入服务器终端,执行:rm -rf runtime/cache/*
Windows 用户可用资源管理器直接清空runtime/cache/文件夹 -
仅删除请求缓存(HTML 静态文件):
执行:rm -rf runtime/request_cache/*
或手动删除runtime/request_cache/下全部文件和子目录
通过代码清除特定缓存
适合在控制器或后台操作中精准控制:
- 删除单个缓存项:
Cache::rm('user_info_123'); - 删除带标签的缓存组(需驱动支持,如 File 驱动不原生支持标签,Redis 可用):
Cache::tag('product')->clear(); - 清空整个缓存驱动:
Cache::clear();(作用于当前配置的缓存类型,如 File) - 清除模板缓存(不删 temp 目录本身):
array_map('unlink', glob(TEMP_PATH . '*.php'));
注意事项
操作前请确认:
- 生产环境建议先停用流量或切到维护模式,避免缓存清除瞬间引发大量重建压力
- 若修改过
CACHE_PATH常量或配置了自定义path,请以config/cache.php或config.php中实际配置为准 - 请求缓存(route cache)的文件名基于 URL + 参数的 md5 生成,不可手动按业务含义识别,只能整体清理或用
Cache::rm()配合路由标识精确删除 - 删除后首次访问会自动重建,无需额外操作
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











