thinkphp日志默认存于runtime/log/目录,不可直接删除以防写入冲突或目录重建失败;推荐用php think clear:log命令(tp6+/tp5.1支持),或配置log.max_files自动轮转清理。
ThinkPHP 日志文件在哪,为什么不能直接删
ThinkPHP 默认把日志写在 runtime/log/ 目录下(具体路径取决于你的 APP_PATH 和配置),不是所有项目都叫 logs_phpthinkphplogs——这更像是手动拼凑的错误路径名。直接进服务器删文件看似快,但可能遇到:进程正写入导致删不掉、删完立刻报错“无法写入日志”、或触发框架自建目录失败而整个日志系统瘫痪。
think clear:log 命令是否可用
TP6+ 支持该命令,TP5.1 也支持但需确认是否启用 think\Console;TP5.0 及更早版本默认不带这个命令。执行前先确认:
- 运行
php think看输出里有没有clear:log - 若无,说明未注册命令,别硬跑,会报
Command not found - 有则直接执行
php think clear:log,它会清空runtime/log/下所有日期子目录(如202405/)和日志文件,但保留目录结构
手动清理要避开的三个坑
如果必须手动删,别只删 .log 文件,也别用 rm -rf runtime/log 一锅端: