Solucionar el error Uploaded File Exceeds the Upload_Max_Filesize Directive in php.ini

Cuando estás trabajando para subir un archivo a un sitio web o a un servidor y te encuentras con el mensaje de error «el archivo subido excede la directiva upload_max_filesize en php.ini», es como chocar contra un muro invisible. Este error apunta directamente a una restricción en la configuración PHP de tu servidor que está impidiendo que tu archivo pase. Entender este error requiere profundizar un poco en cómo funciona la configuración de PHP y lo que significa para las capacidades de gestión de archivos de tu sitio web o aplicación.

Qué significa este error

La idea de limitar el tamaño de un archivo subido se reduce a una necesidad práctica: preservar los recursos del servidor. Los proveedores de alojamiento web aplican este límite para garantizar que el servidor siga siendo rápido y receptivo para todos. Este límite en el tamaño del archivo, medido en megabytes (MB), se rige por una directiva específica conocida como `upload_max_filesize`.

El ajuste `upload_max_filesize` reside en un archivo de configuración llamado `php.ini`. Este archivo es la columna vertebral de la configuración del servidor para las aplicaciones que ejecutan PHP, que es un lenguaje de scripting del lado del servidor muy extendido y utilizado en el desarrollo web. Cuando te encuentres con un error relacionado con la superación del límite upload_max_filesize, es este ajuste de configuración de PHP el que está en el centro de la cuestión.

Es esencial distinguir que este límite de subida no es algo que WordPress, o cualquier otra aplicación, decida por sí mismo. Sin embargo, te encontrarás con este límite dentro de WordPress cuando intentes subir archivos multimedia. Por ejemplo, si vas a Medios → Añadir nuevo en el panel de control de WordPress, verás que allí se especifica el tamaño máximo de archivo que puedes subir. Este límite varía en función de tu proveedor de alojamiento. Por ejemplo, 10Web ofrece un límite de 128 MB, que es más que suficiente para la mayoría de las necesidades. En cambio, otros servicios de alojamiento pueden establecer este límite tan bajo como 2 MB o 4 MB, lo que puede ser bastante restrictivo.

Así, cuando intentas subir un archivo mayor que el límite permitido, te encuentras con el error «el archivo subido excede la directiva upload_max_filesize en php.ini». Alternativamente, podrías ver una variación como «nombre_archivo excede el tamaño máximo de subida para este sitio».

Comprender esta limitación y saber cómo sortearla es clave para gestionar tu sitio web con eficacia. Si te encuentras a menudo con este límite, hay formas de ajustarlo, lo que implica acceder al archivo `php.ini` y modificarlo, o utilizar otros métodos como `.htaccess` o `wp-config.php` para sitios específicos de WordPress. Cada método tiene su propio conjunto de pasos y consideraciones, pero ajustar este límite puede mejorar enormemente las capacidades de manejo de medios de tu sitio, haciéndolo más versátil y fácil de usar.

Variaciones de este error

Este error puede presentarse de diversas formas dependiendo del entorno en el que estés trabajando. Algunas variaciones comunes son:

  • «Archivo demasiado grande para subir» en aplicaciones web
  • «Supera el tamaño máximo de carga para este sitio» en WordPress u otras plataformas CMS
  • Referencias directas a `upload_max_filesize` en registros de errores PHP o herramientas de depuración
  • Un «error HTTP» genérico al intentar subir archivos en determinadas interfaces web

Razones por las que se produce este error

Hay varias razones que pueden provocar este error, entre ellas

Configuración por defecto del servidor: Muchos servidores vienen con una configuración conservadora de `upload_max_filesize` por defecto, a menudo de 2MB u 8MB, para gestionar los recursos de forma eficaz y evitar abusos. Requisitos de la aplicación: Algunas aplicaciones o sitios web requieren la subida de archivos de gran tamaño (por ejemplo, vídeos, PDF o grandes conjuntos de datos), que pueden superar fácilmente los límites por defecto establecidos en `php.ini`.

Ajustes desajustados: La directiva `upload_max_filesize` no es la única que controla la subida de archivos. La directiva `post_max_size`, que limita el tamaño máximo de los datos POST, también debe configurarse adecuadamente; de lo contrario, aumentar `upload_max_filesize` por sí solo no resolverá el problema.

Arreglar el archivo subido excede la directiva upload_max_filesize en php.ini

Resolver este error implica aumentar el subir_tamaño_máx_archivos. You can choose the method you are most comfortable with. The method also depends on setup provided by your hosting service.

Contactar con asistencia

A veces, la solución más sencilla no requiere que toques ningún archivo de configuración.

Ponerse en contacto con el equipo de asistencia de tu proveedor de alojamiento puede ser la forma más rápida y sencilla de resolver este problema. No se trata sólo de ahorrar tiempo, sino de aprovechar la experiencia de los profesionales que atienden este tipo de solicitudes a diario. Tanto si gestionas un pequeño blog como una gran plataforma de comercio electrónico, el soporte de tu alojamiento está ahí para garantizar que tu sitio web funcione sin problemas.

Modifica el archivo php.ini en cPanel

Ajustar las directivas `upload_max_filesize` y `post_max_size` en tu archivo `php.ini` es una forma sencilla de eliminar esos límites.

El archivo `php.ini` es la piedra angular de la configuración de PHP en tu servidor. Dependiendo de la configuración de tu alojamiento, este archivo suele encontrarse en el directorio raíz de tu sitio web o en un directorio de configuración de PHP.

Para alojamientos compartidos o entornos en los que no tienes acceso directo a los archivos, cPanel ofrece una forma sencilla de editar la configuración de PHP sin necesidad de abrir un editor de texto o acceder al servidor mediante SSH.

Usar cPanel para editar la configuración `php.ini`.

Editor php ini múltiple en cPanel

  1. Accede a tu panel de control de cPanel y busca el «Editor INI MultiPHP» en la sección Software. Esta herramienta está diseñada para simplificar el proceso de modificación de la configuración PHP.
  2. Una vez que estés en el Editor INI de MultiPHP, verás un menú desplegable en el que puedes elegir el dominio o aplicación específicos para los que estás ajustando la configuración.
  3. Tras seleccionar tu sitio, busca las directivas `upload_max_filesize` y `post_max_size`. Estos dos ajustes controlan el tamaño máximo de los archivos que se pueden subir a través de PHP y el tamaño máximo de los datos POST que aceptará PHP, respectivamente. Establece ambos valores al límite que necesites.
  4. Después de introducir tus nuevos valores, asegúrate de guardar los cambios.

Subir archivo de tamaño máximo en cPanel

Para asegurarte de que todo funciona como es debido, prueba a subir un archivo que anteriormente superaba el límite. Si lo haces correctamente, ya no deberías encontrarte con el error de tamaño de subida.

En algunos casos, especialmente en servidores VPS o dedicados, puede que necesites reiniciar tu servidor web para que los cambios surtan efecto. Normalmente, esto puede hacerse a través de la interfaz de cPanel o poniéndote en contacto con el servicio de asistencia de tu proveedor de alojamiento.

Modificar el php.ini mediante FTP

No todos los servidores permiten modificar directamente el archivo `php.ini`, lo que da lugar a una interesante solución que utiliza el archivo `.htaccess`. Puedes comprobar si tienes permiso para modificar o crear un archivo

php.ini utilizando un cliente FTP. Si esto no funciona, entonces puedes seguir adelante modificando el archivo .htaccess.

Modificar o crear un archivo php.ini

  1. Utiliza un cliente FTP para acceder a tu servidor. Este paso requiere credenciales FTP, que normalmente te proporciona tu servicio de alojamiento.
  2. Navega hasta la carpeta raíz del sitio, que suele llamarse `public_html`, `www` o similar. Es el directorio que alberga los archivos de tu sitio web.
  3. Si ya existe un archivo `php.ini` en tu carpeta raíz, ábrelo con un editor de texto. Si no, crea un nuevo archivo de texto y llámalo `php.ini`.
  4. Añade o modifica las siguientes líneas. Ajusta los números según tus necesidades:
upload_max_filesize = 12M
post_max_size = 13M
memory_limit = 15M

Los valores `upload_max_filesize` y `post_max_size` garantizan que puedas subir archivos grandes, mientras que `memory_limit` afecta a cuánta memoria puede consumir un script PHP, crucial para plugins o temas intensivos.

Algunos entornos de alojamiento, especialmente los que ejecutan suPHP (una herramienta para ejecutar scripts PHP con los permisos de sus propietarios), requieren una declaración especial en tu archivo `.htaccess` para reconocer tus cambios en `php.ini`.

Edita tu archivo .htaccess con el siguiente código, sustituyendo tunombredeusuario por la ruta real de tu sitio web:<IfModule mod_suphp.c>

suPHP_ConfigPath /home/yourusername/public_html
</IfModule>

Modificar .htaccess para aumentar los límites de subida

Este método es especialmente útil para quienes se encuentran en un callejón sin salida con las modificaciones de `php.ini`, ya sea debido a restricciones del host o simplemente porque los cambios no surten el efecto esperado. A continuación te explicamos cómo puedes utilizar el archivo `.htaccess` para modificar la configuración de PHP, en concreto los límites de carga de archivos y la asignación de memoria.

El archivo htaccess se resalta en rojo y aparece en la lista de archivos del sitio web en el cliente FTP.

  1. Conéctate a tu sitio mediante FTP
  2. Una vez conectado, navega hasta la carpeta raíz de tu sitio, comúnmente llamada `public_html` o `www`.
  3. Localiza el archivo `.htaccess`. Debe estar en el directorio raíz de tu sitio.
  4. Si no puedes verlo, asegúrate de que tu cliente FTP está configurado para mostrar archivos ocultos navegando a ‘Servidor’ > ‘Forzar mostrar archivos ocultos’.
  5. Haz doble clic en el archivo .htaccess para abrirlo con un editor de texto. Si estás creando uno nuevo porque no existe, simplemente crea un nuevo archivo de texto y llámalo `.htaccess`.
  6. Añade las siguientes líneas en la parte superior del archivo, ajustando los valores a tus necesidades específicas:
php_value upload_max_filesize 12M
php_value post_max_size 13M
php_value memory_limit 15M

Es importante tener en cuenta que después de hacer estos cambios, si tu sitio empieza a mostrar un error interno del servidor, es probable que tu servidor esté ejecutando PHP en modo CGI, que no admite estas directivas `.htaccess`.

Elimina las líneas que acabas de añadir del archivo `.htaccess` para restaurar la funcionalidad de tu sitio.

Ajuste de los valores PHP para los clientes de 10Web

10Web utiliza NGINX en lugar de Apache, lo que significa que no hay que modificar el archivo `.htaccess`. Para los usuarios de 10Web que tengan problemas con el límite de subida, 10Web tiene una solución rápida y fácil de usar. Puedes encontrar la solución en tu panel de control.

Cambiar el límite de subida de PHP desde el panel de control de 10Web.

Para ajustar o aumentar los valores PHP de tu sitio:

  1. Entra en tu cuenta 10Web.
  2. Haz clic en el sitio web donde se ha producido el error.
  3. Navega hasta ‘Servicios de alojamiento’ > ‘Herramientas’.
  4. Desplázate hacia abajo y haz clic en «Configuración avanzada».
  5. Para solucionar el error, haz clic en el desplegable y ajusta el valor de ‘Límite de subida’.
  6. Haz clic en «Guardar» para aplicar los cambios.

Reflexiones finales

Solucionar el error «el archivo cargado supera la directiva upload_max_filesize en php.ini» implica algunas estrategias diferentes basadas en la configuración del servidor y los niveles de acceso. Hemos hablado de ajustes directos en el archivo php.ini y de aprovechar el archivo .htaccess para los usuarios de servidores Apache. En los casos en que no sea posible acceder directamente a los archivos, se recomienda ponerse en contacto con el servicio de asistencia del alojamiento. Para los clientes de 10Web, el escenario difiere ligeramente debido a que 10Web utiliza NGINX, que no admite modificaciones .htaccess. Sin embargo, 10Web ofrece un método simplificado y fácil de usar para ajustar los valores PHP directamente desde el panel de control. Cada enfoque tiene como objetivo mejorar la funcionalidad de tu sitio web, permitiendo mayores cargas de archivos y un mejor rendimiento.

Accelerate your WordPress website creation with AI

Create a custom WordPress website tailored to your business needs 10X faster with 10Web AI Website Builder.

No credit card required

Say goodbye to website errors

Share article

Leave a comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Your email address will never be published or shared. Required fields are marked *

Comment*

Name *