mzur/laravel-openstack-swift

Laravel/Lumen 的 OpenStack Swift 存储驱动。

v2.2.0 2023-11-21 07:55 UTC

README

Laravel/Lumen 的 OpenStack Swift 存储驱动。

安装

使用 Composer 安装包

composer require mzur/laravel-openstack-swift

Laravel

此包会自动发现。

Lumen

将服务提供者添加到 bootstrap/app.php

$app->register(Mzur\Filesystem\SwiftServiceProvider::class);

配置

config/filesystems.php 中添加一个新的存储磁盘(使用 v3 标识 API)

'disks' => [
   'openstack' => [
      'driver'    => 'swift',
      'authUrl'   => env('OS_AUTH_URL', ''),
      'region'    => env('OS_REGION_NAME', ''),
      'user'      => env('OS_USERNAME', ''),
      'domain'    => env('OS_USER_DOMAIN_NAME', 'default'),
      'password'  => env('OS_PASSWORD', ''),
      'container' => env('OS_CONTAINER_NAME', ''),
   ],
]

其他配置选项

  • projectId(默认:null):如果您想将访问范围限定到特定项目

  • debugLog(默认:false),logger(默认:null),messageFormatter(默认:null[参考]

  • requestOptions(默认:[][参考]

  • swiftLargeObjectThreshold[参考]

  • swiftSegmentSize[参考]

  • swiftSegmentContainer[参考]

  • root(默认:null):用于容器中对象名称的前缀。

  • url(默认:null):覆盖用于对象公共 URL 的 URL。如果没有设置,公共 URL 将指向 Swift 的公共 URL。此配置在您使用反向代理将请求传递到公共 Swift 容器时很有用。

  • tempUrlKey:用于 临时 URL 的账户或容器级别密钥。如果设置,将自动为存储磁盘启用对 临时 URL 的支持。

  • ttl:覆盖 OpenStack 认证令牌的缓存持续时间(以秒为单位)。值超过令牌的 expires_at 将被忽略。