我的PHP错误日志占据了我在Ubuntu中的整个磁盘。查看内容,我可以看到以下三行的循环:
[php7:warn] [pid 19943] [client 41.101.6.110:52722] PHP Warning: feof() expects parameter 1 to be resource, boolean given in /home/amine/app/pdf-download.php on line 33...
[php7:warn] [pid 19943] [client 41.101.6.110:52722] PHP Warning: filesize(): stat failed for /home/amine/app/file.pdf in /home/amine/app/pdf-download.php on line 34...
[php7:warn] [pid 19943] [client 41.101.6.110:52722] PHP Warning: fread() expects parameter 1 to be resource, boolean given in /home/amine/app/pdf-download.php on line 34...这将永远持续下去。
这样做的原因是网站的用户点击一个按钮,该按钮将一些latex文档编译成pdf并下载该pdf。latex编译失败,因此php脚本似乎一直试图获取该文件。
我已经修复了我的bug,但我担心另一个bug会使服务器无响应。
我该如何阻止这类问题呢?
谢谢。
发布于 2021-02-18 04:14:22
日志很重要。而Ubuntu,像大多数Linux发行版一样,实际上大多数现代操作系统都带有用于管理日志的工具。具体来说,您应该查看logrotate (在终端会话中键入“man5 logrotate.conf”)。实现的细节取决于您是在Apache中使用mod_php,还是在php-fpm中使用。
我相当确定Ubuntu附带了一个用于php-fpm的日志轮换脚本(而且它肯定有一个用于Apache +mod_php的),所以如果它不能自动归档你的日志,那么你的计算机就会出问题。
https://stackoverflow.com/questions/66248916
复制相似问题