繁体   English   中英

Laravel将文件上传到项目目录之外的其他存储

[英]Laravel upload a file to different storage outside the project directory

我正在创建一个CMS,其中可以使用Laravel的文件上传功能来上传文件(照片,pdf等)。 我做的不同的是,我想将文件存储在CMS项目目录之外,比方说我网站的存储文件夹。 顺便说一句,我正在创建两个不同的项目

Laravel文档说,我可以更改将其上传到filesystems.php中的路径。我所做的就是获取网站存储文件夹的相对路径并将其粘贴到此处(请参见下文)。

    'local' => [
        'driver' => 'local', //here
        'root' => storage_path('app'), 
    ],

    'public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'url' => env('APP_URL').'/storage',
        'visibility' => 'public',
    ], 

如预期的那样,它不起作用。 有帮助吗?

您可以在文件系统中添加多个磁盘。

只需找到同一网站的存储文件夹

例:

项目1:

'disks' => [
        'custom_folder_1' => [
            'driver' => 'custom',
            'root'   => '../path/to/your/new/storage/folder',
        ],
]

专案2:

'disks' => [
        'custom_folder_2' => [
            'driver' => 'custom',
            'root'   => '../path/to/your/new/storage/folder',
        ],
]

路径应该在同一位置。

../path/to/your/new/storage/folder

然后您可以像这样使用它:

Storage::disk('custom_folder_1')->put('filename1', $file_content);
Storage::disk('custom_folder_2')->put('filename2', $file_content);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM