Как мне остановить бесконечный рост файла журнала ошибок PHP?

#php #configuration #error-log

#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...
 

это продолжается вечно.

Причина этого в том, что пользователь веб-сайта нажимает на кнопку, которая компилирует некоторый документ latex в pdf и загружает pdf. Компиляция latex завершилась неудачно, и в результате php-скрипт, похоже, пытается получить файл навсегда.

Я исправил ошибку, которая у меня была, но я обеспокоен тем, что из-за другой ошибки сервер перестанет отвечать на запросы.

Как я могу остановить проблему такого рода?

Спасибо.

Комментарии:

1. опубликуйте свой код, чтобы мы могли вас искать.

Ответ №1:

Журналы важны. И Ubuntu, как и большинство дистрибутивов Linux, действительно, большинство современных операционных систем поставляется с инструментами для управления журналами. В частности, вы должны смотреть на logrotate (введите «man 5 logrotate.conf» в сеансе терминала). Специфика реализации зависит от того, используете ли вы mod_php в Apache или php-fpm.

Я был совершенно уверен, что Ubuntu поставляется со сценарием поворота журнала для php-fpm (и он определенно есть для Apache mod_php), поэтому на вашем компьютере что-то сломано, если оно не автоматически архивирует ваши журналы.