为什么使用文件作为缓存驱动,有时候创建的文件没有权限?

程序使用文件做为缓存驱动,有时候发现会server error,发现是file_put_contents错误,是创建的缓存文件权限不够,不懂这是什么情况?
补充一下:肯定是给storage设置了权限的,这里疑惑的是这个问题是小概率出现的。
补充错误提示:file_put_contents(/codes/chain/storage/framework/cache/data/ef/1b/ef1bceb9a53905150469c7ca2eefc5c7c294e6ac): failed to open stream: No such file or directory {“exception”:”[object] (ErrorException(code: 0): file_put_contents(/codes/chain/storage/framework/cache/data/ef/1b/ef1bceb9a53905150469c7ca2eefc5c7c294e6ac): failed to open stream: No such file or directory at /codes/xinhua/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:133)
对应的文件权限:644,但是所属的用户和用户组特别奇怪

为什么使用文件作为缓存驱动,有时候创建的文件没有权限?
最新补充:并不清楚框架会在什么情况下偶尔会创建644权限的缓存文件,目前我是进入到容器内给storage授权为www-data:www-data 755的权限,并没有找到更好的办法解决这个问题,这意味着我在部署新项目或者重新构建镜像的时候需要再次进入容器去给文件夹授权,但是应该还是解决不了问题,毕竟上面的截图显示的所属用户和用户组是33 tape

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 23

:joy:没有人遇到这个问题么,触发频率好像不低

1年前 评论

贴图出来啊,看下文件归属

1年前 评论
Siam (楼主) 1年前

如果是win系统,可能是文件被占用,也就是已经有进程在写入了,但是提示还是没有权限,放在linux下面设置好权限就没事了

1年前 评论
Siam (楼主) 1年前

是否会用到root权限,cli模式是会发生

1年前 评论
Siam (楼主) 1年前
my38778570 (作者) 1年前
Siam (楼主) 1年前
my38778570 (作者) 1年前
Siam (楼主) 1年前

我也遇到过类似的情况,感觉是使用git pull时权限变了,git pull是使用root权限执行的,拉取的文件就变成了 root 权限,导致www用户没有权限

1年前 评论
Siam (楼主) 1年前

看下php-fpm进程用户是不是root用户导致的权限不够

1年前 评论
Siam (楼主) 1年前
raybon (作者) 1年前

我曾经遇到过日志文件是root权限 无法写入,后来排查原因是因为用了队列,队列的执行用户是root,如果是队列先创建了日志文件就会出现权限不足。

有没有可能是类似的情况?

1年前 评论
Siam (楼主) 1年前

去我的提问看下

1年前 评论
Siam (楼主) 1年前
ncccc1 (作者) 1年前
Siam (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!