服务正常运行,但日志文件是空的。

原因:日志文件被 root 创建,服务用 www-data 跑,没权限写。程序没报错,静默丢弃。

排查:

  1. ls -l 看日志文件属主
  2. 用服务账号手动追加一行试试

解决方案:

  1. 日志目录属主设为服务账号
  2. 用 logrotate 的 create 指定权限
  3. 启动脚本里先 touch 并改属主

这类问题最坑的地方是完全静默。没日志以为没请求,实际是写不进去。

现在我的部署脚本会验证日志可写。

主楼