使用Laravel';s File::makeDirectory以在公用目录中创建文件夹

使用Laravel';s File::makeDirectory以在公用目录中创建文件夹,directory,laravel-8,Directory,Laravel 8,我的控制器中有以下代码-我正在尝试创建一个目录结构以将文件保存到其中: use File; ... $path = public_path().'/shared/uploads/images/brands/400'; if (!File::exists($path)) { File::makeDirectory($path, $mode = 0755, true, true); } 运行控制器时,出现以下错误: Intervention\Image\Exception\NotWr

我的控制器中有以下代码-我正在尝试创建一个目录结构以将文件保存到其中:

use File;

...

$path = public_path().'/shared/uploads/images/brands/400';

if (!File::exists($path)) {
    File::makeDirectory($path, $mode = 0755, true, true);
}
运行控制器时,出现以下错误:

Intervention\Image\Exception\NotWritableException: Can't write image data to path (/home/tony/Git/website/public/shared/uploads/images/brands/800/17.png) in file /home/tony/Git/website/vendor/intervention/image/src/Intervention/Image/Image.php on line 150
在我的
public
目录中,我可以看到没有创建任何目录结构

看看这段代码执行类似/相同操作的其他示例,我看不出我的代码有什么不同,只是我正在公用文件夹中创建目录


一如往常,任何帮助都会得到感谢。

这是一个权限问题

在我的开发机器上,我只是将
/shared
的所有者更改为
www-data:www-data

sudo chown www-data:www-data ./shared/
完成后,控制器工作正常,创建了目录结构的其余部分