Configurar PHP y límites en PrestaShop con DirectAdmin
Introducción: ¿Por qué es importante configurar PHP y sus límites en PrestaShop?
Si tienes una tienda online con PrestaShop, sabes que el rendimiento y la estabilidad son clave para ofrecer una buena experiencia de compra. Una de las causas más comunes de errores como pantallas en blanco, tiempos de carga lentos o problemas al instalar módulos es una configuración incorrecta de PHP. En este artículo, te explicaré paso a paso cómo configurar PHP y ajustar los límites de recursos en PrestaShop usando DirectAdmin, el panel de control de hosting más popular. Además, incluiremos consejos útiles para que tu tienda funcione de manera óptima.
[INFO] Este artículo está pensado para usuarios sin experiencia técnica. No necesitas ser un experto en servidores; solo sigue los pasos con calma.
¿Qué son los límites de PHP y por qué afectan a PrestaShop?
PHP es el lenguaje de programación que utiliza PrestaShop para funcionar. Para que tu tienda pueda ejecutar tareas como procesar pedidos, cargar imágenes o ejecutar módulos, PHP necesita ciertos recursos del servidor. Estos recursos se controlan mediante límites de PHP, que son valores como:
- memory_limit: Cantidad máxima de memoria que un script puede usar.
- max_execution_time: Tiempo máximo (en segundos) que un script puede ejecutarse.
- upload_max_filesize: Tamaño máximo de archivos que se pueden subir (como imágenes de productos).
- post_max_size: Tamaño máximo de datos que se pueden enviar en un formulario (por ejemplo, al guardar un producto).
- max_input_vars: Número máximo de variables que se pueden enviar en una solicitud (importante para tiendas con muchos atributos).
Si estos límites son demasiado bajos, tu PrestaShop puede fallar. Por eso, es fundamental saber cómo ajustarlos en DirectAdmin.
Requisitos previos: Acceso a DirectAdmin
Antes de empezar, asegúrate de tener:
- Acceso a tu panel de DirectAdmin (usuario y contraseña).
- Una tienda PrestaShop instalada en tu hosting.
- Conocimiento básico de tu dominio o carpeta donde está instalada la tienda.
[WARNING] Si no tienes acceso a DirectAdmin, contacta con tu proveedor de hosting. Algunos paneles como Syspanel (antes HestiaCP) también permiten configurar PHP, pero el proceso es diferente. En Syspanel, el acceso es por el puerto 2106.
Paso 1: Acceder a la configuración de PHP en DirectAdmin
DirectAdmin facilita la configuración de PHP desde su interfaz web. Sigue estos pasos:
- Inicia sesión en DirectAdmin con tus credenciales.
- En el menú principal, busca la sección "Advanced Features" o "Características Avanzadas".
- Haz clic en "PHP Selector" o "Selector de PHP". Dependiendo de la versión de DirectAdmin, puede aparecer como "PHP Version" o "PHP Settings".
[TIP] Si no ves esta opción, puede que tu plan de hosting no incluya PHP Selector. En ese caso, deberás contactar con tu proveedor para que lo active.
Una vez dentro, verás una lista de dominios o cuentas de usuario. Selecciona el dominio donde está instalada tu PrestaShop.
Paso 2: Elegir la versión de PHP compatible con PrestaShop
PrestaShop requiere una versión específica de PHP para funcionar correctamente. A la fecha de este artículo, las versiones recomendadas son:
- PrestaShop 1.7: PHP 7.4, 8.0 o 8.1 (evita PHP 8.2 si tienes módulos antiguos).
- PrestaShop 8.x: PHP 8.0 o superior.
En el PHP Selector, verás una lista desplegable con las versiones disponibles. Selecciona la que corresponda a tu versión de PrestaShop.
[INFO] Si tu hosting usa Syspanel (puerto 2106), el proceso es similar: busca la opción "PHP Version" en el panel de tu dominio.
Paso 3: Ajustar los límites de PHP para PrestaShop
Una vez seleccionada la versión de PHP, es hora de modificar los límites. En DirectAdmin, esto se hace desde la pestaña "PHP Settings" o "Configuración PHP". Aquí te muestro los valores recomendados:
| Parámetro | Valor recomendado | Explicación |
|---|---|---|
| memory_limit | 256M o 512M | Suficiente para la mayoría de tiendas. Si tienes muchos módulos, usa 512M. |
| max_execution_time | 120 o 180 | Para procesos largos como importación de productos. |
| upload_max_filesize | 64M o 128M | Para subir imágenes de alta resolución. |
| post_max_size | 64M o 128M | Debe ser igual o mayor que upload_max_filesize. |
| max_input_vars | 5000 o 10000 | Para tiendas con muchos atributos o variantes. |
Para cambiar cada valor:
- Busca el parámetro en la lista (puedes usar el buscador interno).
- Haz clic en el campo y escribe el nuevo valor.
- Guarda los cambios con el botón "Save" o "Apply".
[WARNING] No subas los límites demasiado. Valores excesivos pueden saturar el servidor. Si tu hosting es compartido, respeta los límites máximos permitidos por tu proveedor.
Paso 4: Verificar que los cambios se aplicaron correctamente
Después de guardar, es importante comprobar que los límites se han actualizado. Puedes hacerlo de dos formas:
Opción 1: Desde el panel de PrestaShop
- Ve a "Parámetros Avanzados" > "Información" en tu back office de PrestaShop.
- Busca la sección "Configuración del servidor".
- Allí verás los valores actuales de PHP, como
memory_limitomax_execution_time.
Opción 2: Creando un archivo PHP de prueba
- Crea un archivo llamado
info.phpen la raíz de tu tienda (por ejemplo, usando el Administrador de Archivos de DirectAdmin). - Escribe este contenido:
<?php phpinfo(); ?> - Accede a
tudominio.com/info.phpy busca los parámetros que configuraste. - Elimina el archivo después por seguridad.
[TIP] Si los valores no coinciden, puede que el servidor tenga una configuración global que anule el PHP Selector. En ese caso, contacta con soporte.
Solución de problemas comunes (FAQ)
1. Mi PrestaShop muestra un error "Allowed memory size exhausted"
Esto significa que el memory_limit es demasiado bajo. Auméntalo a 256M o 512M siguiendo el paso 3.
2. No puedo subir imágenes de productos grandes
Revisa upload_max_filesize y post_max_size. Ambos deben ser al menos el tamaño de la imagen que intentas subir.
3. La instalación de módulos se queda colgada
Prueba aumentando max_execution_time a 180 o 300 segundos. También verifica max_input_vars si el módulo tiene muchas opciones.
4. DirectAdmin no muestra el PHP Selector
Esto puede ocurrir si tu plan de hosting no lo incluye. Pide a tu proveedor que lo active o que modifique los límites manualmente.
5. Uso Syspanel (puerto 2106) y no encuentro la configuración
En Syspanel, ve a "Dominios" > (tu dominio) > "PHP". Allí podrás cambiar la versión y los límites. Si no ves opciones avanzadas, contacta con soporte.
Consejos adicionales para optimizar PrestaShop con DirectAdmin
Además de configurar PHP, aquí tienes algunas buenas prácticas:
- Activa la caché de PrestaShop: Ve a "Parámetros Avanzados > Rendimiento" y activa la caché (recomendada: APC o Memcached si están disponibles).
- Comprime imágenes: Usa herramientas como TinyPNG antes de subirlas.
- Actualiza todo: Mantén PrestaShop, módulos y PHP actualizados para evitar vulnerabilidades.
- Revisa los logs: En DirectAdmin, busca "Error Log" para identificar problemas de PHP.
[INFO] Si tu hosting usa Syspanel, la gestión de logs está en la sección "Herramientas" o directamente en el panel de tu dominio.
Conclusión
Configurar correctamente PHP y sus límites en DirectAdmin es esencial para que tu tienda PrestaShop funcione sin problemas. No necesitas ser un experto; con los pasos que te he mostrado, podrás ajustar memory_limit, max_execution_time y otros parámetros clave. Recuerda siempre verificar los cambios y, si algo falla, consulta el FAQ o contacta con tu proveedor de hosting.
Si tu panel es Syspanel (puerto 2106), el proceso es similar, pero busca las opciones en la sección de dominio. ¡Ahora ya tienes el conocimiento para optimizar tu tienda! ¿Te ha sido útil este artículo? Compártelo con otros usuarios de PrestaShop.
[TIP] Guarda estos valores como referencia para futuras configuraciones. Un buen ajuste de PHP puede marcar la diferencia entre una tienda lenta y una rápida.
