El almacenamiento de objetos de Linode está marcado como compatible con S3 . Sabiendo esto, pensé que simplemente podía usar las credenciales de Linode en mi filesystems.php y usar ->disk('s3') para cargar y descargar archivos, pero aparentemente este no es el caso.
He instalado todos los paquetes S3 PHP requeridos como se sugiere en los documentos de Laravel .
Mi .env tiene:
AWS_ACCESS_KEY_ID=foo AWS_SECRET_ACCESS_KEY=bar AWS_DEFAULT_REGION=DE AWS_BUCKET=my-linode-storage-object.eu-central-1.linodeobjects.com En los registros, obtengo la excepción Could not resolve host . Intenta concatenar el punto final de AWS con lo que proporcioné anteriormente, por lo que es obvio que no funciona. ¿Debo instalar un paquete completamente diferente para manejar las conexiones de objetos de almacenamiento de Linode?
No veo muchos tutoriales en la web sobre cómo usar el objeto de almacenamiento de Linode en las aplicaciones de Laravel. Cualquier enlace o sugerencia sería apreciada.
Desde los documentos de laravel, simplemente instale uno de los paquetes Composer necesarios
$ composer require league/flysystem-aws-s3-v3No instales league/flysystem-cached-adapter todavía, ya que eso requeriría más configuración.
A continuación, agregue un nuevo disco que use el controlador s3 en el archivo de configuración filesytems file config/filesystems.php
'linode' => [ 'driver' => 's3', 'key' => env('LINODE_KEY'), 'secret' => env('LINODE_SECRET'), 'endpoint' => env('LINODE_ENDPOINT'), 'region' => env('LINODE_REGION'), 'bucket' => env('LINODE_BUCKET'), ],Agregue las nuevas variables de entorno al archivo .env de su proyecto:
LINODE_KEY="KEYUNDERDOUBLEQUOTES" LINODE_SECRET="SECRETUNDERDOUBLEQUOTES" LINODE_ENDPOINT="https://eu-central-1.linodeobjects.com" LINODE_REGION="eu-central-1" LINODE_BUCKET="bucket-name"Por lo general, incluyo las variables debajo de "" para asegurarme de que funcione con símbolos. Incluya también http o https en LINODE_ENDPOINT.
Ahora que tiene todo configurado, ahora puede usar este disco en su código laravel ->disk('linode')