laravel - Laravel - 删除缓存文件 - 权限不足
问题描述
我正在尝试删除位于storage/framework/cache/data
using中的一些文件php artisan cache:clear
。这是静默失败,因为尝试执行该操作的用户没有对这些文件的写入权限。
这些文件位于运行 Nginx 的 linux 服务器上 - 文件夹具有以下权限/所有者/组:
drwxr-xr-x www-data www-data
文件有:
-rw-r--r-- www-data www-data
我试图删除缓存文件的用户被称为deploy
,并且是该www-data
组的成员。我无法使用sudo
,因为此命令发生在部署脚本期间。
我发现了这个拉取请求,https://github.com/laravel/framework/pull/31579,它似乎描述了我的确切问题,我还查看了https://laravel.com/docs/7.x /filesystem#the-local-driver(在权限部分下)。基于此,我尝试将以下内容添加到filesystems.php
:
'permissions' => [
'file' => [
'public' => 0775,
'private' => 0775,
],
'dir' => [
'public' => 0775,
'private' => 0775,
],
]
在 thepublic
和local
disk 部分下,查看 Laravel 是否使用这些权限创建了缓存文件,而不是上面显示的那些,但它似乎没有影响任何东西。我猜这仅适用于使用File
外观存储或创建的文件,而不适用于自动生成的缓存文件?
如何设置 Laravel 创建这些文件的权限?
提前感谢您的帮助
解决方案
推荐阅读
- optimization - 使用 StaticArrays 有效地填充矩阵中的块
- python - 复杂的查找和替换字符串
- java - 使用自制软件安装时 Flink Cluster 未启动
- java - Java-fx ant 应用程序不运行 netbeans
- html - 停止按钮移动到下面的行
- python - “Int”对象不是可下标的python
- javascript - 使用 NGXS 调用 API-data 并在 form-element 中设置
- java - 尝试在 Android 中创建弹出窗口但出现空对象引用错误
- swift - 适用于 IOS 的 Firebase 条码扫描器
- swift - Carthage 更新终端错误 = 非法指令:4