Saltar al contenido

⚡ Archivos de Prueba de Umbral

Archivos con tamaño exacto en bytes para pruebas de límites de subida.

Qué es la prueba de valores límite

Muchos servicios limitan el tamaño. Probar justo por debajo, exacto y justo por encima del límite verifica la lógica de validación.

Justo por debajo (9.9MB / 24.9MB)

Por debajo del límite — debería subir.

Exacto (10MB / 25MB)

En el límite — verifica el comportamiento.

Justo por encima (10.1MB / 25.1MB)

Por encima del límite — debería fallar.

PNG

JPG

ZIP

Límites de subida de servicios principales

ServicioLímiteArchivos de prueba
Adjunto de Gmail25MB24.9MB / 25MB / 25.1MB
Discord (gratis)25MB24.9MB / 25MB / 25.1MB
WordPress (por defecto)10MB9.9MB / 10MB / 10.1MB

📖 Dónde se suele tropezar

Archivos ajustados al byte justo por debajo, exactamente en y justo por encima de un limite: 9,9 / 10,0 / 10,1 MB. Una sola pasada te dice si el limite significa "como maximo" o "menos que", y que capa te rechaza. Y nada mas: el rendimiento y el comportamiento con concurrencia hay que medirlos aparte.

Caso Qué ocurre Qué hacer
Un limite de 10 MB rechaza un archivo de 10 MB Que 10 MB signifique 10.000.000 de bytes o 10.485.760 (10 × 1024²) son 480 KB de diferencia, y ambas lecturas existen. Averigua primero cual de las dos aplica. La correspondencia esta en unidades de tamano y la conversion en el conversor de bytes.
Falla sin mensaje de error Cuando nginx rechaza por client_max_body_size, el 413 vuelve antes de llegar a PHP, asi que en el log de la aplicacion no queda nada. Mira los logs de acceso y error de nginx para distinguirlos. Que significa un 413 y como tratarlo esta en el articulo sobre el 413.
El limite exacto pasa unas veces si y otras no Si la comprobacion es sobre la peticion entera y no sobre el fichero, un archivo justo en el limite se pasa por el tamano de las cabeceras, y la longitud del nombre tambien lo mueve. Pon los resultados de 9,9 MB y 10,1 MB uno al lado del otro y mira en que lado cambia el comportamiento. Si fallan los dos, el umbral real esta mas abajo.

Que el limite funcione bien no dice nada sobre varios archivos casi al tope llegando a la vez. Comprueba que upload_max_filesize por tu concurrencia sigue cabiendo en el disco y la memoria que tienes.