《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。




关于 LearnKu
高认可度评论:
看下是不是有定时任务root执行 导致生成的日志文件是root权限的
看下是不是有定时任务root执行 导致生成的日志文件是root权限的
有可能你有
root或其他高权限用户跑的定时任务,在凌晨创建了日志文件,对其他用户没有写入权限,当执行fpm的www用户写入日志时,提示权限不足。个人建议:
www用户或同用户组的权限跑;给config/logging.php里的配置加一下permission试试
有程序先于 fpm 用户(一般是www)创建了权限更高的日志,因此 fpm 无权写入。检查crontab 、supervisor、常驻脚本等,都使用 fpm 相同的用户运行。
什么情况下会写日志?
没有权限排除:第一项目目录执行权限是否为fpm的执行者(fpm执行用户在php-fpm.conf里 user= 可以查到),定时任务执行者是谁?是root还是跟fpm的一样?如果不是统一执行者,比如下面的
有没使用Supervisor 有的话可能是这个工具导致的
赞同楼上几位,这每天的周期大概率是定时任务导致的,定时任务执行的时候,要用 fpm 的用户运行,如果是 root 用户运行就用 su 命令切换一下用户。
要么定时任务 要么supervisor 不过这两个都可以指定用户运行,先看 php-fpm是什么用户运行的,然后其它的程序执行php脚本的时候就需要设置成什么用户运行
github.com/hongfs/perm-listen
可以试一下这个小工具。
问答:laravel写入日志时的执行环境问题? 看这个问题对你有帮助
就是两个不同的权限用户写入同一个文件的问题,例如www和root。分别写入两个文件就互不影响了
大概率是root先跑的任务创建的文件,其他用户写不进去,看下具体文件的权限,root执行任务的创建的文件给o+w的权限
大概率是用root用户跑的定时任务
BT定时任务使用下边的命令:
crontab -e -u www-data
用 www-data 用户运行
cli程序执行的时候都用www用户
在cli入口 或者 公共的bootstrap里统一修改用户权限呢
建议还是不要把日志存这里存es里面好点
大概率是root跑了某定时脚本,然后生成了日志。 btw,这个问题甚至在前端会反馈成“跨域问题”非常坑。