laravel框架的日志权限问题

       很多laravel框架开发者可能都会遇到类似的问题。在开发中有时候可以正常反馈报错,但是有时候确显示无权限打开日志。小白的我对这个问题苦恼了很久。

1.首先了解日志文件是怎么产生和运行的

       脚本是通过root/work用户跑的 用php内置函数 get_current_user() 获取

个人的开发环境是 cgi/nginx/apache(fast-cgi 网关通用接口)php-fpm 跑的 用php内置函数 php_sapi_name()获取

       在每日的开发中如果先开发的脚本出现报错则 会生成 所有者为 root/work的日志文件,导致个人环境对日志没有可写操作(生成的日志文件默认权限是644),同理如果是在web端的开发先生成的日志文件则所有者为开发者本身,导致执行脚本时的报错不能写入日志文件。显示无权限(此图已通过acl权限方式处理,不会出现日志无权限访问的情况)

laravel框架的日志权限问题_第1张图片

2.解决方法1

      生成两个日志文件,分别以相对应的名字命名(不支持)

 解决方法2 acl权限(最优)

      setfacl -R -d -m user:www:rwx  laravel/storage/logs/

      setfacl -R -d -m group:www:rwx  laravel/storage/logs/

解决办法3 

看一下这里吧 https://stackoverflow.com/questions/27674597/laravel-daily-log-created-with-wrong-permissions

 

 

你可能感兴趣的:(后端,数据库,后端,研发管理)