首页 > 解决方案 > 如何阻止我的 PHP 错误日志文件无限增长?

问题描述

我的 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...

永远持续下去。

这样做的原因是网站的用户单击了一个按钮,该按钮将一些乳胶文档编译为 pdf 并下载 pdf。乳胶编译失败,因此 php 脚本似乎试图永远获取文件。

我已经修复了我的错误,但我担心另一个错误会使服务器无响应。

我将如何阻止这种问题?

谢谢。

标签: phpconfigurationerror-log

解决方案


日志很重要。和大多数 Linux 发行版一样,Ubuntu 确实大多数现代操作系统都带有用于管理日志的工具。具体来说,您应该查看 logrotate(在终端会话中键入“man 5 logrotate.conf”)。实现的细节取决于您是在 Apache 中使用 mod_php 还是 php-fpm。

我相当确定 Ubuntu 附带了一个用于 php-fpm 的日志轮换脚本(它肯定有一个用于 Apache + mod_php),所以如果它没有自动归档你的日志,你的计算机上就会出现问题。


推荐阅读