如何解决Laravel存储具有权限的文件774
我在失去思想。我通过laravel API上传文件,它们存储在文件夹中,并且文件始终获得许可644
,有什么方法可以将文件存储为775
吗?
我可以以某种方式将其添加到我的函数中吗?
(0755,true,true)
存储文件功能:
$result=$request->file('file_path')->store('apiFiles/'.$idParameter);
感谢您的帮助
解决方法
在laravel中,您可以使用'public'
或'private'
磁盘,并在配置文件filesystems.php
中设置权限选项
https://laravel.com/docs/8.x/filesystem#permissions
对于目录,公众可见性转化为0755
,对于文件,0644
则转化为公众。您可以在文件系统配置文件中修改权限映射:
'local' => [
'driver' => 'local','root' => storage_path('app'),'permissions' => [
'file' => [
'public' => 0664,'private' => 0600,],'dir' => [
'public' => 0775,'private' => 0700,
然后您可以存储具有特定可见性的文件,如此处建议的https://laravel.com/docs/8.x/filesystem#file-visibility
或者您可以使用内置的php函数chmod()
https://www.php.net/manual/en/function.chmod.php
,您可以通过chmod命令创建文件后更改文件许可,如下所示:
$result=$request->file('file_path')->store('apiFiles/'.$idParameter);
chmod('file path',0775);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。