validar tipo tamaño subir subida seguridad restringir putobject ejemplo aws archivos archivo php amazon-s3 filesize file-type

php - subir - s3 carga directa que restringe el tamaño y el tipo de archivo



validar subida de archivos en php (4)

Para hacer lo que quiere hacer, tendrá que cargarlo a través de su propio servicio web. Probablemente, esto sea lo mejor, ya que proporcionar acceso de escritura global a los usuarios finales a su cubo S3 es una pesadilla de seguridad, sin mencionar que no habría nada que les impida cargar archivos de gran tamaño y aumentar sus cargos.

Una pregunta para novatos, pero he recurrido a Google y no puedo encontrar ninguna solución.

Quiero permitir a los usuarios subir archivos directamente a S3, no a través de mi servidor primero. Al hacerlo, ¿hay alguna manera de verificar los archivos para el límite de tamaño y los tipos permitidos antes de cargar realmente en S3? Preferiblemente no usar flash pero javascript.



Si está hablando de un problema de seguridad (personas que cargan un gran archivo en su cubo), sí, PUEDE restringir el tamaño del archivo con la carga basada en navegador a S3.

Aquí hay un ejemplo de la variable "política", donde "rango de longitud de contenido" es el punto clave.

"expiration": "''.date(''Y-m-d/TG:i:s/Z'', time()+10).''", "conditions": [ {"bucket": "xxx"}, {"acl": "public-read"}, ["starts-with","xxx",""], {"success_action_redirect": "xxx"}, ["starts-with", "$Content-Type", "image/jpeg"], ["content-length-range", 0, 10485760] ]

En este caso, si el tamaño del archivo de subida es> 10 mb, Amazon rechazará la solicitud de carga.

Por supuesto, antes de comenzar el proceso de carga, debe usar javascript para verificar el tamaño del archivo y hacer algunas alertas si lo hace.

obtener tamaño de archivo en javascript


Suponiendo que confía en que sus usuarios no omitan su sistema, puede verificar el tamaño del archivo y escribir en Javascript, luego cargarlo publicando su formulario a través de AJAX .