博客
关于我
laravel 5.5 -- filesystem
阅读量:795 次
发布时间:2023-01-30

本文共 1312 字,大约阅读时间需要 4 分钟。

文件系统配置

Laravel 提供了强大的文件系统配置,允许开发者灵活管理文件存储位置和访问方式。本文将详细说明如何配置文件系统并确保上传内容能够公开访问。

配置文件说明

文件系统的配置通常位于文件 config/filesystems.php 中。配置的主要内容包括以下几个部分:

return [    'default' => env('FILESYSTEM_DRIVER', 'local'),    //默认存储驱动,环境变量可覆盖    'cloud' => env('FILESYSTEM_CLOUD', 's3'),      //云端存储配置    'disks' => [        'local' => [            'driver' => 'local',       //本地存储驱动            'root' => storage_path('app'), //默认存储目录        ],        'public' => [            'driver' => 'local',       //同样使用本地驱动            'root' => storage_path('app/public'),  //公开文件夹路径            'url' => env('APP_URL') . '/storage', //访问路径            'visibility' => 'public',   //文件可见性设置        ],        's3' => [            'driver' => 's3',        //S3驱动配置            'key' => env('AWS_KEY'),    //访问S3的凭据            'secret' => env('AWS_SECRET'), //S3秘密凭据            'region' => env('AWS_REGION'), //S3区域设置            'bucket' => env('AWS_BUCKET'), //S3存储桶名称        ],    ],];

公开访问上传内容

通过运行命令 php artisan storage:link,可以将 public/storage 目录与 storage/app/public 同步,使其内容公开访问。这样,浏览器可以直接访问存储在公共文件夹中的文件资源。

文件存储示例

使用 Storage::disk('local') 将文件存储到默认目录。当使用开启了公开访问的存储配置时,即使文件不在网页服务器中,你仍能通过生成正确 URL 方便用户访问。

例如,要将文件存储到 storage/app 中,可以使用以下方法:

Storage::disk('local')->put('file.txt', 'Contents');

这样操作后,文件将存储在 storage/app/file.txt 中,适合需要通过前端应用访问的场景。

转载地址:http://rkgyk.baihongyu.com/

你可能感兴趣的文章