Paneles de control Plesk Problemas Técnicos Seguridad Servidores

Incrementar max_input_vars en Plesk, php.ini y htaccess

Photo by Andrew Wulf on Unsplash

Cómo incrementar max_input_vars de PHP

Nos puede haber pasado que, cuando estamos trabajando con un gran volumen de subidas a una base de datos, sin que medie ningún error evidente, se ha cortado la subida dejando parte de los campos impecablemente subidos, y el resto han sido ignorados.

Si revisando el log de errores de servidor vemos algo como: “unknown: input variables exceeded 1000. To increase the limit change max_input_vars in php.ini“, no debemos preocuparnos, pues la solución es relativamente sencilla.


 

Valor actual de max_input_vars en el php.ini

Aunque el error nos indica ya el límite de la variable, (“input variables exceeded 1000”), podemos consultar su valor actual a través del php.ini

Esto nos puede servir para que cuando realicemos el cambio nos cercioremos de que se ha aplicado correctamente, además de aportarnos otra gran cantidad de información muy útil.

¿Cómo lo hacemos?

  1. Creamos un archivo llamado info.php
  2. Escribimos, únicamente, el siguiente código:
  3. Lo subimos a nuestro ftp y lo ejecutamos. Si lo hemos a la raíz, la ruta sería http://dominio.com/info.php

Eso nos mostrará algo como lo siguiente:

Buscamos la línea de “max_input_vars” y consultamos su valor.

 

Editando php.ini

Una forma de cambiar el valor es editar el php.ini
Podemos acceder a él a través de FTP o de SSH, aunque es posible que no tengamos suficientes permisos para hacerlo. En ese caso, podremos forzar un cambio en el .htaccess.

 

Por FTP

El archivo info.php que hemos creado en el punto 1, nos dirá la ruta donde está:

 

Por SSH

[Te puede interesar: Cómo acceder a SSH]

Tras identificarnos, escribimos el siguiente comando en la consola:

 

Buscamos la línea en cuestión, la modificamos, guardamos los cambios:

Y reiniciamos el servidor:

 

Cambiar max_input_vars en htaccess

[Te puede interesar: No se muestra el archivo htaccess en WinSCP]

Si tenemos permisos FTP pero no los suficientes como para acceder a la ruta del php.ini, podemos buscar el archivo .htaccess en la raíz de nuestro site y editarlo añadiendo la siguiente línea:

Donde 3000 es el valor que queramos asignar, siempre mayor que el que tenemos, claro.

De esa forma quedará algo como:

Guardamos y volvemos a subir al FTP.

¡OJO! Recomendamos hacer siempre copias de seguridad de cualquier archivo que se vaya a editar!

 

Incrementar max_input_vars en Plesk

Si tenemos un panel de control tipo Plesk en nuestro servidor, podremos incrementar max_input_vars de manera muy sencilla.

Para ello debemos loguearnos, dirigirnos a Dominios -> El Dominio de la web que nos haya lanzado el error -> Configuración PHP -> Directivas adicionales

Y escribir:

O el valor que necesitemos. Aplicamos, aceptamos ¡y listo!

 

¿Por qué se produce el error si no he modificado el script y antes funcionaba bien?

 

La versión de PHP 5.3.9 incluyó esta limitación en una actualización de seguridad, cuyo valor por defecto es de 1000.

La razón de que se incorporase fue paliar el daño que causaban los scripts que envían miles de consultas a través de los formularios PHP con el fin de hakear el sistema.

Por esa misma razón, tener max_input_vars con valores muy altos, no es en absoluto recomendable.

 

¿Te has atascado en algún punto? En los comentarios te ayudamos! Y si te ha gustado el artículo, ¡compártelo!

super_looper

Escribir comentario

Haz clic aquí para dejar tu comentario