steffjenl / laravel-azure-blob-storage
适用于Laravel的Storage API的Microsoft Azure Blob Storage集成
Requires
Requires (Dev)
- php: >=8.0.2
- mockery/mockery: ^1.0
- orchestra/testbench: ^7.0
- phpunit/phpunit: ^9.0
- psy/psysh: ^0.11
- squizlabs/php_codesniffer: ^3.1
README
适用于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_NAME、AZURE_STORAGE_KEY和AZURE_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