steffjenl/laravel-azure-blob-storage

适用于Laravel的Storage API的Microsoft Azure Blob Storage集成

1.2.0 2023-03-02 12:25 UTC

This package is auto-updated.

Last update: 2024-09-18 09:23:13 UTC


README

Build Status

适用于Laravel的Storage API的Microsoft Azure Blob Storage集成

此包使用新的Azure存储Blob包,并扩展了AzureBlobStorageAdapter包以实现特定的Laravel功能。您还可以在支持Flysystem Filesystem的框架中使用此包。

安装

当使用Laravel 9及以上版本时,使用Composer安装此包

composer require steffjenl/laravel-azure-blob-storage

当使用Laravel 8及以下版本时,使用Composer安装此包

composer require steffjenl/laravel-azure-blob-storage:1.0.5

在Laravel版本5.5之前,您还需要手动将服务提供者添加到config/app.php

    SteffjeNL\LaravelAzureBlobStorage\AzureBlobStorageServiceProvider::class,

然后将其添加到config/filesystems.php中的disks部分

        'azure' => [
            'driver'            => 'azure',
            'local_address'     => env('AZURE_STORAGE_LOCAL_ADDRESS', null),
            'name'              => env('AZURE_STORAGE_NAME'),
            'key'               => env('AZURE_STORAGE_KEY'),
            'container'         => env('AZURE_STORAGE_CONTAINER'),
            'prefix'            => env('AZURE_STORAGE_PREFIX', ''),
            'url'               => env('AZURE_STORAGE_URL', null),
        ],

最后,将AZURE_STORAGE_NAMEAZURE_STORAGE_KEYAZURE_STORAGE_CONTAINER字段添加到您的.env文件中,并使用相应的凭证。然后您可以将azure驱动程序设置为默认驱动程序或云驱动程序,并像平常一样使用它来获取和检索文件。

配置

如果您使用DSN,可以在AZURE_STORAGE_URL字段中输入您的DNS地址

如果您想使用前缀,以便始终在特定文件夹中工作,可以使用AZURE_STORAGE_PREFIX字段

如果您想使用存储模拟器,可以将AZURE_STORAGE_LOCAL_ADDRESS设置为本地。如果您的存储模拟器在外部机器上,您可以将AZURE_STORAGE_LOCAL_ADDRESS更改为除本地之外的其他地址。当使用local时,连接字符串将是UseDevelopmentStorage=true

本地模拟器示例配置

AZURE_STORAGE_LOCAL_ADDRESS=local
AZURE_STORAGE_NAME=devstoreaccount1
AZURE_STORAGE_KEY=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==
AZURE_STORAGE_CONTAINER=CONTAINER_NAME_HERE

远程模拟器示例配置

AZURE_STORAGE_LOCAL_ADDRESS=http://192.168.0.2:10000/devstoreaccount1
AZURE_STORAGE_NAME=devstoreaccount1
AZURE_STORAGE_KEY=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==
AZURE_STORAGE_CONTAINER=CONTAINER_NAME_HERE