Dificultades comunes
El elemento MAX_FILE_SIZE
no puede especificar un tamaño de fichero
mayor que el establecido en la directiva upload_max_filesize
del fichero php.ini. Por defecto es 2 megabytes.
Si hay un límite de memoria habilitado, podría ser necesario un valor
de memory_limit más grande. Asegúrese
de establecer un valor de memory_limit
lo suficientemente grande.
Si el valor de max_execution_time
es demasiado pequeño, la ejecución del script podría exceder este valor. Asegúrese
de establecer un valor de max_execution_time
lo suficientemente grande.
Nota:
max_execution_time solo
afecta al tiempo de ejecución del propio script. Todo tiempo empleado
en actividades externas a la ejecución del script,
tales como las llamadas al sistema con system(), la
función sleep(), las consultas a base de datos, el tiempo que tarda
el proceso de subida de ficheros, etc., no se incluye para determinar el tiempo
máximo que el script ha estado en ejecución.
Advertencia
max_input_time establece el tiempo
máximo, en segundos, que al script se le permite recibir información; esto incluye
la subida de ficheros. Para ficheros grandes o varios ficheros, o usuarios con conexiones más lentas,
podría excederse el valor predeterminado de 60 segundos
.
Si el valor de post_max_size se establece demasiado
pequeño, los ficheros grandes no podrán ser subidos. Asegúrese de establecer
post_max_size
lo suficientemente grande.
El ajuste de configuración max_file_uploads
controla el número máximo de ficheros que se pueden subir en una
petición. Si se suben más ficheros que el límite establecido,
$_FILES parará de procesar ficheros una vez se alcance
este límite. Por ejemplo, si
max_file_uploads se establece a
10
, $_FILES nunca contendrá
más de 10 elementos.
No validar sobre qué fichero se opera podría significar que los usuarios pueden acceder
a información delicada de otros directorios.
Por favor, observe que el CERN httpd parece quitar todo
lo que empieza con primer espacio en blanco en la cabecera de tipo de contenido MIME
que recibe desde el cliente. Mientras este sea el caso, el CERN httpd
no tendrá soporte para la funcionalidad de subida de ficheros.
Debido a la gran cantidad de estilos de listados de directorios, no podemos garantizar
que los ficheros con nombres exóticos (como el que contiene espacios en blanco) se manejen adecuadamente.
Los desarrolladores no deben mezclar los campos input
normales con los de subida de ficheros en la misma
variable de formulario (mediante un nombre de input
como foo[]
).