阿里云对象存储oss配置
一、安装扩展包
找到安装包
laravel < 9 安装 composer require "iidestiny/laravel-filesystem-oss:^2"
二、编写路由和控制器
路由文件auth.php
$api->get('oss/token',[\App\Http\Controllers\Auth\OssController::class,'token']);
控制器 php artisan make:controller Auth/OssController
class OssController extends BaseController
{
//生成oss上传token
public function token()
{
$disk = Storage::disk('oss');
$config = $disk->getAdapter()->signatureConfig($prefix = '/', $callBackUrl = '', $customData = [], $expire = 300);
$configArr = json_decode($config,true);
return $this->response->array($configArr);
}
}
三、配置.env文件和config/filesystems.php文件
env文件
OSS_ACCESS_KEY=xxxxxxxxxxxxx
OSS_SECRET_KEY=xxxxxxxxxxxxxxx
OSS_ENDPOINT=xxxxxxxxxxxxxxxxxxxxxxxx
OSS_BUCKET=xxxxxxxxxxxxxxxxxxx
OSS_BUCKET_URL=XXXXXXXXXXXX
filesystems.php文件
'oss' => [
'driver' => 'oss',
'root' => '', // 设置上传时根前缀
'access_key' => env('OSS_ACCESS_KEY'),
'secret_key' => env('OSS_SECRET_KEY'),
'endpoint' => env('OSS_ENDPOINT'), // 使用 ssl 这里设置如: https://oss-cn-beijing.aliyuncs.com
'bucket' => env('OSS_BUCKET'),
'bucket_url' => env('OSS_BUCKET_URL'),
'isCName' => env('OSS_IS_CNAME', false), // 如果 isCname 为 false,endpoint 应配置 oss 提供的域名如:`oss-cn-beijing.aliyuncs.com`,否则为自定义域名,,cname 或 cdn 请自行到阿里 oss 后台配置并绑定 bucket
// 如果有更多的 bucket 需要切换,就添加所有bucket,默认的 bucket 填写到上面,不要加到 buckets 中
'buckets'=>[
'test'=>[
'access_key' => env('OSS_ACCESS_KEY'),
'secret_key' => env('OSS_SECRET_KEY'),
'bucket' => env('OSS_TEST_BUCKET'),
'endpoint' => env('OSS_TEST_ENDPOINT'),
'isCName' => env('OSS_TEST_IS_CNAME', false),
],
//...
],
],
四、对象存储网站,JavaScript客户端签名直传
下载浏览器客户端代码
https://help.aliyun.com/document_detail/31925.html
五、postman测试获取oss token
get www.xxx.com/api/auth/oss/token

浙公网安备 33010602011771号