Aumentar el Tamaño Máximo al Cargar Archivos con PHP y Apache en Ubuntu 12.04
Solución 1: Modificar php.ini global
$ sudo nano /etc/php5/apache2/php.ini
upload_max_filesize = 10M
También te recomiendo aumentar los valores de post_max_size
(tamaño máximo de carga por envío, debe ser igual o mayor al especificado en upload_max_filesize
), e incluso el de max_execution_time
(tiempo máximo en segundos que el servidor esperará al script para que termine su ejecución, en este caso, la carga de archivos). Por ejemplo:
upload_max_filesize = 10M
post_max_size = 20M
max_execution_time = 120 |
Guarda el archivo, y sal del editor. Para que los cambios aplicados funcionen, basta con reiniciar Apache.
Solución 2: Usar php.ini local
Básicamente es hacer lo mismo que la solución anterior, la diferencia es que no se modifica el php.ini
global, si no que creamos un php.ini
local. Este método tiene algunas limitantes:
- Los efectos del
php.ini
local no son recursivos a los subdirectorios en donde se encuentre ubicado, así que no basta crearlo en el directorio raíz de nuestro servidor, si no que debemos especificar unphp.ini
en cada directorio donde queramos obtener el efecto deseado. - Puesto que cada
php.ini
local se toma en cuenta en vez delphp.ini
global, éstos deben incluir ciertas directivas de compatibilidad necesarias para el web hosting que tengas contratado, por lo que es necesario consultar a tu proveedor por dichas directivas.
Un ejemplo de php.ini
local, con directivas de compatibilidad y las que nosotros necesitamos, sería:
zend_extension = /usr/local/ioncube/ioncube.so register_globals = Off magic_quotes_gpc = Off session.save_path = /tmp memory_limit = 200M upload_max_filesize = 10M post_max_size = 20M max_execution_time = 120 |
Pero repito, es muy importante consultar la documentación de tu proveedor de hosting.
Solución 3: Usar .htaccess
Crea (o modifica, en caso de que ya exista) el archivo .htaccess
en el directorio raíz de tu sitio, blog o aplicación web, o bien, en el directorio donde deseas que las directivas tengan efecto.
Agrega las siguientes líneas (modifica los valores según lo requieras):
php_value upload_max_filesize 10M
php_value post_max_size 20M
php_value max_execution_time 120 |
A diferencia de la solución anterior, aquí no hay limitantes: los efectos del .htaccess
si son recursivos a los subdirectorios donde se encuentre ubicado, y basta con especificar las directivas que nos interesan.