【发布时间】:2015-07-17 10:46:47
【问题描述】:
在我的应用程序中,我使用每天 00:00 UTC 创建的 laravel.log 文件。但是,有时该文件是使用 root:root 用户/组而不是通常的 webapp:webapp (apache 用户)创建的。这会使我的应用程序崩溃,因为应用程序无法再写入它。我注意到在文件写入一段时间(几分钟)后,文件所有权可能会发生变化。
- 什么可能导致文件的所有权在创建后发生更改?
- Laravel 中是否有办法尝试/捕获日志记录,以使应用程序不会因文件写入错误而崩溃?
存储目录和文件的权限不是问题,因为它已经运行了很长时间。只是 laravel.log 文件的所有权偶尔会在没有干预的情况下发生变化。
【问题讨论】:
-
您是否以 root 身份运行您的 crons?您应该考虑在存储目录上使用 ACL 以确保 Web 服务器始终具有访问权限。
-
听起来每天运行的创建日志文件的任何进程都由(或作为)root执行。
标签: php laravel file-permissions