Iniciar sesión
Empezar

Documentación de Easy Digital Downloads

Documentación, Materiales de Referencia y Tutoriales para Easy Digital Downloads 

Amazon S3

La extensión de Amazon S3 para Easy Digital Downloads te permite alojar archivos de descarga en tu cuenta de Amazon S3. Esto es seguro y más confiable que almacenar los archivos en tu propia cuenta de hosting.

En este artículo

Creación de una cuenta de IAM
Claves de acceso de IAM
Configuración
Uso de Amazon S3 con EDD
Forzar la descarga de archivos
Problemas y preguntas comunes

Creación de una cuenta de IAM

Para que Easy Digital Downloads pueda conectarse a tu cuenta de Amazon S3, necesitarás crear un usuario de IAM y adjuntar una política de permisos a ese usuario. Puedes hacer clic en Mostrar credenciales de seguridad del usuario para ver la clave de acceso y la clave secreta. Estos son los valores que necesitas ingresar en tu sitio de WordPress en Descargas → Configuración → Extensiones → Amazon S3.

1. Inicia sesión en tu cuenta de Amazon S3

Inicia sesión en tu cuenta de Amazon S3 y navega a la página de Usuarios. Esta página se encuentra haciendo clic en el nombre de tu cuenta en la esquina superior derecha y luego en Credenciales de seguridad > Usuarios (debajo de Gestión de acceso en el lado izquierdo de la página).

2. Configurar usuario de IAM

A. Agregar usuario

Si tienes un usuario de IAM existente que deseas usar, haz clic en ese usuario. Si necesitas crear un nuevo usuario, haz clic en el botón azul Crear usuario y sigue las instrucciones. Ahora necesitas obtener las credenciales de seguridad y también adjuntar una política de permisos al usuario.

B. Establecer detalles del usuario:

Nombre de usuario: Crea un nombre de usuario de tu elección y haz clic en Siguiente.

C. Establecer permisos

  1. Selecciona la casilla “Adjuntar políticas directamente”.
  2. Luego, en el cuadro Filtrar , ingresa “S3full”. Esto filtrará los resultados para que sean relevantes para Amazon S3.
  3. Marca la casilla de AmazonS3FullAccess.
  4. Ignora la sección “Establecer límite de permisos – opcional”.
  5. Haz clic en Siguiente.
D. Revisar y crear

Confirma que tus permisos coinciden con las instrucciones anteriores. De lo contrario, no hay nada que configurar aquí, haz clic en Crear usuario.

3. Obtener claves de acceso

Necesitarás una cuenta de IAM que utilice los permisos de los pasos anteriores. Si has creado una cuenta de IAM en el pasado con los permisos AmazonS3FullAccess, puedes usar la cuenta existente.

A. Haz clic en el nombre de usuario de IAM creado anteriormente, listado en tu página de Usuarios de AWS.

B. Haz clic en la pestaña Credenciales de seguridad y luego en Crear clave de acceso.

C. Selecciona Servicio de terceros y marca Confirmar.

D. Haz clic en Crear clave de acceso. No se requiere una etiqueta de descripción.

E. Guarda la clave de acceso y la clave de acceso secreta.

Nota: No podrás acceder a la clave secreta de nuevo para este usuario, así que asegúrate de guardar el archivo. Si pierdes las credenciales, necesitarás crear una nueva clave de acceso.

Tu usuario de IAM ahora debería tener permiso completo para acceder y cargar archivos al bucket de S3. Esto proporciona a tu tienda EDD acceso a tus archivos y la capacidad de crear enlaces de descarga seguros para los clientes.

F. Agrega la Clave de acceso y la Clave de acceso secreta a la configuración de Amazon S3 de tu tienda EDD en Descargas → Configuración → Extensiones → Amazon S3.

Si necesitas más ayuda para crear usuarios de IAM o adjuntar políticas, consulta la guía de Amazon sobre la creación de usuarios de IAM para obtener más información.

Limitar el acceso a buckets específicos

Si tu cuenta de S3 se utiliza para otros fines y deseas limitar tu cuenta de IAM (Tienda EDD) a buckets específicos, puedes crear una política personalizada en lugar de AmazonS3FullAccess. Esto se hace en lugar del Paso 3 de la sección Establecer permisos.

Haz clic en "Adjuntar políticas existentes directamente" y luego selecciona "Crear política":

Agrega los detalles de la política a continuación a través del editor JSON. Actualiza bucket-name-here con el nombre o los nombres de los buckets a los que deseas que tu tienda EDD tenga acceso.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObjectAcl",
                "s3:GetObject",
                "s3:ListBucketMultipartUploads",
                "s3:AbortMultipartUpload",
                "s3:ListBucket",
                "s3:ListMultipartUploadParts"
            ],
            "Resource": [
                "arn:aws:s3:::bucket-name-here",
                "arn:aws:s3:::bucket-name-here/*"
            ]
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "s3:ListAllMyBuckets",
            "Resource": "*"
        }
    ]
}

Al usar esta política, todos los nombres de Bucket serán visibles, pero solo los que coloques en la sección Recursos serán accesibles. Si se accede a un bucket que no está incluido en la lista de Recursos a través de EDD, ocurrirá un error de PHP. Esperamos mejorar esto en una futura versión.

Configuración

Una vez que la extensión esté instalada y activada, puedes navegar a Descargas → Configuración → Extensiones → Amazon S3 e ingresar la información de tu cuenta de Amazon S3.

1. Ingresa el ID de clave de acceso y la clave secreta

El ID de clave de acceso y la clave secreta se obtienen creando un usuario de IAM en tu cuenta de S3. Consulta
nuestra guía anterior para obtener información sobre cómo crear un usuario de IAM con los permisos adecuados.

2. Ingresa un Bucket predeterminado

Este es el bucket predeterminado al que deseas que se carguen los archivos. Para crear nuevos buckets u obtener una lista de tus buckets actuales, ve a tu Consola de S3 (debes iniciar sesión para acceder a la consola). Ingresa aquí el nombre del bucket que deseas usar como predeterminado. Al cargar archivos a Amazon S3, tendrás la opción de seleccionar el bucket al que deseas que se cargue el archivo.

Permisos del bucket

Tu bucket debe tener la opción Bloquear todo el acceso público ACTIVADA, para restringir el acceso no autorizado a los archivos. EDD proporcionará acceso temporal a los archivos a los clientes.

3. Ingresa un Host de Amazon S3 (Opcional)

Este es el host S3 que está utilizando tu bucket. La mayoría de las veces, este campo se puede dejar en blanco. Sin embargo, si tu sitio tiene problemas para acceder a tu bucket, intenta cambiarlo al Endpoint de la región de tu bucket, para tu bucket predeterminado.

Puedes encontrar la región de tu bucket iniciando sesión en tu cuenta de AmazonS3, haciendo clic en S3 y luego observando la columna de región que aparece junto a cada bucket. Ahí se indicará cuál es la región. Una vez que la sepas, busca el host correcto correspondiente en la Documentación de Regiones de Amazon S3. Copia y pega ese host y haz clic en guardar en tu WordPress.

4. Tiempo de Expiración del Enlace (Opcional)

Este es el número de minutos que la URL generada dinámicamente es válida. Cuando un cliente hace clic en un enlace de descarga entregado por Easy Digital Downloads, se genera una nueva URL sobre la marcha para el archivo en Amazon S3. Este es el número de minutos que la nueva URL secreta es válida.

Esto completa la configuración de Amazon S3.

Usando Amazon S3 con EDD

Subirás archivos a un producto descargable de la misma manera que antes, pero tendrás dos nuevas pestañas en el cargador de medios llamadas Subir a Amazon S3 y Biblioteca de Amazon S3.

Cuando subes un archivo desde esta pestaña, se subirá automáticamente a tu cuenta de Amazon S3. Cualquier archivo que subas a S3 será accesible desde tu Biblioteca de Medios de WordPress, al igual que cualquier otro archivo multimedia.

Subiendo a Amazon S3 a través de EDD

Cuando subes un archivo desde esta pestaña, se subirá automáticamente a tu cuenta de Amazon S3.

Agregando archivos que ya están en Amazon S3 a EDD

Cualquier archivo que subas a S3 será accesible desde tu Biblioteca de Medios de WordPress, al igual que cualquier otro archivo multimedia, a través de la Biblioteca de Amazon S3 en el cargador de medios.

Alternativamente, puedes agregar archivos a la URL del archivo manualmente:

Notas importantes:

  • No copies y pegues la URL directamente desde tu biblioteca de Amazon S3 en el campo URL del archivo. Hacerlo resultará en un mensaje de error de Acceso Denegado al intentar descargar el archivo.
  • Todos los nombres de buckets y carpetas en tu cuenta de Amazon S3 deben estar en minúsculas y no contener caracteres especiales. Consulta la documentación de Amazon sobre restricciones de nombres de buckets.
  • No todas las versiones de S3 están disponibles en todas las regiones. Esta tabla mostrará cuáles están disponibles en tu región.
  • Los archivos entregados a través de AmazonS3 se entregarán como "redirección" incluso si tu tienda está configurada como "forzada". Aprende más.

Forzar la descarga de archivos

A veces, tu navegador web intentará mostrar o reproducir cualquier archivo que estés descargando, y podrías terminar reproduciendo música o video dentro de tu navegador, en lugar de guardarlo. Hay una variedad de cosas que se pueden hacer para prevenir esto y forzar la opción de guardar, pero si estás almacenando tus archivos en Amazon S3, entonces se ignorarán todas las configuraciones en tu servidor web.

En lugar de depender de la configuración de tu servidor web, debes configurar las opciones correctamente en S3. Aquí te mostramos cómo deben configurarse.

Nota: Esta configuración se aplica a un archivo y/o carpeta, pero no a todo el bucket

Abriendo Propiedades

  1. En tu Bucket de S3, busca el archivo con el que deseas trabajar y selecciónalo.
  2. Haz clic en Acciones >  Cambiar metadatos
  3. Haz clic en Añadir metadatos y establece el Tipo en Definido por el sistema, la Clave en Content-Disposition y el Valor en attachment y Guardar cambios.

Esto forzará que se descargue en lugar de reproducirse o mostrarse en tu navegador.

Problemas y preguntas comunes:

Los archivos se abren en el navegador en lugar de descargarse

Esto se puede resolver forzando la descarga de archivos.

¿Podrán los clientes ver la URL real del archivo y simplemente descargarlo directamente?

No, el cliente verá una URL que va a tu propia tienda, donde EDD traducirá la ubicación para que la descarga funcione sin que el cliente vea la URL de origen de Amazon.

Error: Problema con el certificado SSL: no se puede obtener el certificado del emisor local

Este error significa que el certificado SSL en el servidor de tu sitio web es inválido o está instalado incorrectamente. Para resolverlo, contacta a tu empresa de hosting y solicita que verifiquen que el certificado está instalado correctamente y es válido.

Error:Acceso denegado

Este error significa que el ID de clave de acceso y la clave secreta que estás utilizando no tienen los permisos necesarios para acceder a los buckets y recursos de S3.

Para resolver esto, necesitarás adjuntar una nueva política de permisos al usuario de IAM. Consulta nuestra
guía sobre cómo crear un usuario de IAM con los permisos adecuados para resolver este error.

También puedes ver este mensaje de error si copiaste la URL de Amazon S3 y la pegaste en el campo URL del archivo de tu Descarga. Consulta la nota anterior sobre los pasos adecuados que deben seguirse para vincular tus archivos a tus Descargas.

Error:RequestTimeTooSkewed

Este error ocurre debido a una mala configuración de la zona horaria de tu servidor web. Para resolverlo, contacta a tu empresa de hosting y pídeles que reconfiguren correctamente la configuración de la zona horaria.

Error:SignatureDoesNotMatch

Si recibes este error, seguido de un mensaje de error que dice
La firma de la solicitud que calculamos no coincide con la firma que proporcionaste, es probable que tu nombre de bucket contenga letras mayúsculas o espacios. Para resolver el problema, renombra tu bucket para que no contenga letras mayúsculas. También puedes crear un nuevo bucket sin letras mayúsculas en el nombre para resolverlo.

Error: NoSuchKey La clave especificada no existe

Este error ocurre cuando hay un problema con la forma en que se nombra el archivo, o incluso el bucket. Se debe eliminar toda la puntuación y los caracteres especiales.

Por ejemplo: Si tienes un archivo llamado test-file-one.mp4.zip cámbialo a testfileone.zip

Otros errores o problemas al subir archivos a Amazon S3

Si tienes problemas para subir archivos a Amazon S3 o para acceder a archivos existentes en Amazon S3, consulta los pasos a continuación para resolver el problema.

  1. Verifica la configuración de tu Host de Amazon S3 en Descargas → Ajustes → Extensiones → Amazon S3. Asegúrate de que tu host esté configurado correctamente, incluyendo la verificación de que has configurado la región correcta (lee el punto sobre Host de Amazon S3 arriba para ver cómo hacerlo).
  2. Asegúrate de que el nombre del archivo esté dentro del límite máximo de 1024 caracteres. Puedes encontrar más información en la documentación de Amazon sobre cómo formatear correctamente tus nombres de archivo.
  3. Si has cambiado recientemente a una nueva cuenta de Amazon S3 y tienes problemas para subir archivos a tus buckets, este es típicamente un problema temporal que puede ocurrir poco después de crear nuevos buckets o cuentas. Debería resolverse automáticamente después de unas horas. Consulta la documentación de Amazon para más información sobre esto.
  4. ¿Sigues sin tener éxito? Contacta con el soporte e incluye el mensaje de error exacto o el comportamiento que estás experimentando.

Actualizaciones de licencias de software fallando debido a Descarga fallida. Error cURL 8: Contenido-Longitud inválido: valor

Es posible que la extensión de Amazon S3 no esté forzando la descarga. Si ves este error, intenta
establecer el Método de Descarga en Forzado.

El cliente ve Actualización Fallida: Descarga fallida. Error Interno del Servidor al intentar actualizar un plugin

Confirma que el archivo de origen que se utilizará para las actualizaciones automáticas está seleccionado en la configuración de licencias de Descarga.

Probablemente verás el siguiente error fatal de PHP en el archivo de registro de errores de PHP de la tienda:

PHP Fatal error:  Uncaught InvalidArgumentException: Found 2 errors while validating the input provided for the GetObject operation:
[Key] is missing and is a required parameter
[Key] expected string length to be >= 1, but found string length of 0 in /home/ph198/public_html/wp-content/plugins/edd-amazon-s3/vendor/aws/aws-sdk-php/src/Api/Validator.php:65
¿Fue útil este artículo?

¡Empieza a vender hoy mismo!

Únete a más de 50.000 dueños de tiendas inteligentes y empieza a usar la forma más fácil de vender productos digitales con WordPress.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]