当日志的配置从默认的 single 改为 daily 之后,生成的日志的所属变成 PHP-fpm 的用户和组了,会导致实际系统用户在执行 migrate 时没有权限。
total 1092
drwxrwxrwx 2 kiyoma kiyoma 4096 4月 25 09:47 ./
drwxrwxrwx 6 kiyoma kiyoma 4096 4月 2 09:14 ../
-rw-rw-r-- 1 kiyoma kiyoma 14 3月 25 16:09 .gitignore
-rw-r--r-- 1 php73 www 137 4月 24 17:16 laravel-2019-04-24.log
-rw-r--r-- 1 php73 www 43010 4月 25 10:37 laravel-2019-04-25.log
-rwxrwxrwx 1 kiyoma kiyoma 1044673 4月 23 20:41 laravel.log*
最底下的laravel.log是原本默认的single模式下的日志文件。
但是自从把配置修改为daily后,日志文件的所属就变了。
原本我还没发现这一点,知道今天改了表结构,要跑migrate的时候,提示
"laravel-2019-04-25.log" could not be opened: failed to open stream: Permission denied
我才查出了这个问题。
我想,在正常的生产环境部署下,访问终端的管理员用户,和运行php-fpm的用户,肯定不会是同一个吧?那应该如何解决这个问题呢?
推荐文章: