首页 > 解决方案 > Laravel 中偶尔缓存文件的错误权限(组/用户)

问题描述

我已经设置了所有权限,并且一切正常运行了大约 2 年,直到今天我使用强制清除缓存php artisan cache:clear

现在,当在 /storage/framework/cache 中创建缓存时,它工作正常并且所有权限都设置正确,除了偶尔的文件。

我可以在那里拥有数千个缓存文件,所有这些文件都具有正确的权限(www-data 作为用户和组)。. 但随后会随机生成一个使用错误权限的文件,最终导致此错误。

 file_put_contents(/.../.../storage/framework/cache/data/52/cf/52cf02760233b9fc625602f52fd0748a51ac772a): failed to open stream: Permission denied

当我导航到该文件时,权限设置为 744,用户/组设置为 root:root。每个其他缓存文件都设置为 774 和 www-data:www-data。

我可以通过运行将文件夹设置为正确的组和用户来临时修复它,sudo chown -R www-data:www-data storage但是大约 15 分钟后,一旦另一个文件使用不正确的权限生成,错误就会再次出现。

这可能是什么原因造成的?

标签: laravelubuntu

解决方案


推荐阅读