今天同事有个项目发到测试环境测试,页面始终出不来,也不报错,日志里没有报错,页面上也没有报错。后来用strace追踪下,是smarty模板解析问题。我怀疑是tpl模板的语法有错误,于是把这个模板文件清空,然后在里面写上简单的”hello world”,可是也没输出到页面上来,有点奇怪了。又装了个 xdebug工具,开户trace和profiler,文件都生成了,但里面内容全是空。太神奇了。那只能用debug_backtrace()函数打印出调用栈了。发现有个write操作,于是在里面调试了下。传给write的参数有文件名,有内容。但打开那个文件里面却没有内容。后来又简单的写了个file_put_contents(“./a.txt”,”text”),发现也是文件创建了,但没内容。突然想到了,文件创建了,没内容,写不进去,是不是硬盘满了。df -h 看了下,果然硬盘100%了。哎,坑到了。其它测试虚机也应该做个资源监控的。