Problemas al guardar Configuración en Joomla
Introducción:
Cuando cambiamos de servidor un sitio web con Joomla, es común encontrarnos con pequeños problemas técnicos que, aunque frustrantes, pueden resolverse con algo de paciencia y conocimiento. En este artículo, quiero compartir una experiencia reciente en la que tuve problemas al guardar la configuración de un sitio web en Joomla 4. Después de investigar, descubrí que el problema no estaba relacionado con permisos ni con el propio Joomla, sino con una configuración php.ini
.
El Problema: Cambios que No se Guardan en Joomla
El inconveniente surgió cuando intentaba realizar cambios en la configuración global de mi sitio web en Joomla 4. Todo parecía funcionar bien, pero al hacer clic en Guardar, la página simplemente se recargaba y los cambios no se aplicaban, sin mostrar ningún mensaje de error o alerta en el panel de administración.
Mi primera sospecha fue que podría tratarse de un problema de permisos en los archivos o carpetas, así que revisé cuidadosamente:
- Permisos de Archivos y Carpetas: Me aseguré de que tanto los archivos como las carpetas tuviesen los permisos correctos según las recomendaciones de Joomla (normalmente 644 para archivos y 755 para carpetas).
Todo parecía en orden, pero el problema persistía.
La Causa: El Límite de max_input_vars
Después de varias pruebas y consultas, descubrí que el problema estaba relacionado con una configuración específica de PHP: la variable max_input_vars
.
Esta directiva del archivo php.ini
define la cantidad máxima de variables de entrada que PHP puede procesar a través de una solicitud POST o GET, en resumen, los datos del formulario que se envían al guardar la configuración de Joomla. Por defecto, en muchos servidores, este valor suele estar configurado en 1000 o más.
En mi caso, al verificar el valor de esta directiva, descubrí que estaba configurada en 100. Este límite tan bajo impedía que Joomla procesara correctamente los datos de configuración al momento de guardar, ya que los formularios de configuración global suelen enviar muchas variables al servidor.
La Solución
Para resolver este problema, seguí estos pasos:
Editar el Archivo .user.ini
o .php.ini
o .htaccess
:
En este caso el hosting de Joomla estaba en un servidor de DonWeb. En la raíz del sitio había un .user.ini (típico archivo de php), accedí al archivo de configuración y agregué la directiva max_input_vars
= 10000. Fuí al administrador de Joomla: Sistema -> Información del sistema -> Información de PHP, verifiqué que max_input_vars este en 10000 y listo.
Si no existe .user.ini
, puedes crear un php.ini en la raíz y probar si lo lee tu hosting.
Ejemplo de .user.ini:
max_execution_time = 60 max_input_vars = 10000
También puedes probar agregar la directiva en tu .htaccess:
php_value max_input_vars 10000
Y por último si con las opciones anteriores no tuviste suerte podés buscar en tu hosting si hay alguna sección de configuración de php y agregar max_input_vars=10000
y si no es el caso posiblemente tengas que hacer un reclamo a tu hosting para que lo hagan ellos.