777 文件夹的权限被拒绝,所有权已检查

Permission denied with 777 folder, ownership checked

提问人:jpesa 提问时间:10/17/2023 最后编辑:jpesa 更新时间:10/18/2023 访问量:42

问:

我试图在Laravel中保存一个文件。我的代码基本上是这样的:

use File;
$certificateFile = $request->file; 
\File::put(public_path('/uploads/certificate/student'), base64_decode($certificateFile));

这就是我创建 /certificate/student 文件夹的方式:

if (!\File::isDirectory(public_path('/uploads'))) {
\File::makeDirectory(public_path('/uploads'), 0777, true, true);
}
if (!\File::isDirectory(public_path('/uploads/certificate'))) {
\File::makeDirectory(public_path('/uploads/certificate'), 0777, true, true);
}
if (!\File::isDirectory(public_path('/uploads/certificate/student'))) {
\File::makeDirectory(public_path('/uploads/certificate/student'), 0777, true, true);
}

我在\File::p ut()行处收到错误(Permisson denied)。 问题是,我检查了一下,文件夹及其根目录都具有 777 权限,可写、可读:

dd( 
    "Permission", substr(sprintf('%o',fileperms(public_path('/uploads/certificate/student'))), -4),
    "Readable ?", is_readable(public_path('/uploads/certificate/student')), 
    "Writable ?", is_writeable(public_path('/uploads/certificate/student')), 
    "File owner", fileowner(public_path('/uploads/certificate/student')), 
    "My script owner id", getmyuid());

我的结果是这样的:

"Permission" 
"0777" 
"Readable ?" 
true 
"Writable ?" 
true 
"File owner"
0 
"My script owner id"
0 

我做错了什么吗?也许是我检查所有者的方式?因为我读到巴巴的 anwser 说你应该检查一下

PHP Laravel 文件

评论

1赞 OMi Shah 10/17/2023
这回答了你的问题吗?如何修复错误:无法打开laravel.log?....得票最高的答案是你的答案。
0赞 Akshay ak 10/17/2023
您的公用文件夹是否具有此“/uploads/certificate/”目录?它是否已经创建或正在创建运行时?
0赞 Hammad Ahmed khan 10/17/2023
尝试给 chmod -R 755 public/uploads/certificate/
0赞 jpesa 10/18/2023
Akshay ak:我刚刚编辑了我的问题。您提到的文件夹是在运行时创建的。请检查一下

答: 暂无答案