Cómo solucionar el error 'Connection timed out' en PrestaShop con Syspanel
¿Tu tienda PrestaShop se ha quedado congelada y no carga? ¿Ves un mensaje de error que dice "Connection timed out" (Tiempo de conexión agotado) o "Error de conexión a la base de datos"? Tranquilo, no eres el único. Este es uno de los problemas más comunes en tiendas online, especialmente cuando el servidor está sobrecargado o mal configurado.
En este artículo, te voy a guiar paso a paso para solucionar el error "Connection timed out" en PrestaShop usando Syspanel (el panel de control de tu hosting, antes conocido como HestiaCP, accesible por el puerto 2106). No necesitas ser un experto en servidores; solo sigue estas instrucciones didácticas y verás cómo tu tienda vuelve a la vida.
¿Qué significa exactamente "Connection timed out"?
Cuando ves "Connection timed out", tu navegador o tu tienda PrestaShop está intentando conectarse a un recurso (como la base de datos, un servicio externo o el propio servidor) pero no recibe respuesta a tiempo. Es como llamar por teléfono y que nadie conteste después de muchos tonos.
Las causas más frecuentes en PrestaShop son:
- Servidor sobrecargado: Demasiadas visitas o procesos consumen toda la memoria.
- Configuración incorrecta de la base de datos: Los parámetros de conexión no son los correctos.
- Firewall o reglas de seguridad: Syspanel puede estar bloqueando la conexión.
- PHP o servicios caídos: El motor que ejecuta PrestaShop se ha detenido.
- Tiempo de espera (timeout) muy bajo: El servidor cierra la conexión antes de que PrestaShop termine de procesar.
Primeros pasos: Diagnóstico rápido con Syspanel
Antes de ponernos técnicos, vamos a hacer una comprobación básica desde Syspanel. Recuerda que accedes a él desde tu navegador escribiendo tu-dominio.com:2106 (sustituye "tu-dominio.com" por tu dominio real). Usa tu usuario y contraseña de hosting.
### Paso 1: Revisa el estado de los servicios
Dentro de Syspanel, busca la sección "Servicios" o "Estado del servidor". Verás una lista de servicios como Apache, Nginx, MySQL/MariaDB, PHP, etc.
- ¿Están todos en verde? Perfecto, sigue al paso 2.
- ¿Ves algún servicio en rojo o con el texto "stopped"? Ese es el culpable. Haz clic en el botón "Iniciar" o "Reiniciar" junto al servicio caído.
[TIP] Si el servicio se cae constantemente, puede ser un problema de recursos (memoria). Más adelante veremos cómo optimizar.
### Paso 2: Verifica los logs de errores
Los logs son el diario de a bordo de tu servidor. Te dirán exactamente qué está fallando.
- En Syspanel, ve a "Logs" o "Registros".
- Busca "Error log" o "Registro de errores" (normalmente de Apache o Nginx).
- También revisa el log de MySQL o MariaDB.
- Busca líneas que contengan "timeout", "connection refused" o "max_connections".
Ejemplo de lo que podrías ver:
[error] Connection timed out: connect to 127.0.0.1:3306 (MySQL)
Eso indica que PrestaShop no puede conectar con la base de datos. Si ves algo así, el problema está en la configuración de la base de datos o en el servicio MySQL.
Soluciones paso a paso para el error "Connection timed out"
Dependiendo de lo que hayas visto en los logs, aplica una o varias de estas soluciones.
### Solución 1: Aumentar el tiempo de espera (timeout) en PHP y servidor
A veces el servidor es demasiado impaciente. Vamos a darle más margen a PrestaShop.
- En Syspanel, ve a "Configuración del servidor" o "PHP".
- Busca la opción "Editar configuración de PHP" (puede estar dentro de un dominio específico).
- Localiza los parámetros:
max_execution_time(tiempo máximo de ejecución)max_input_timememory_limit
- Cámbialos a valores más altos, por ejemplo:
max_execution_time = 300(5 minutos)max_input_time = 300memory_limit = 256M(o incluso 512M si tu hosting lo permite)
- Guarda los cambios y reinicia el servicio PHP desde Syspanel (botón "Reiniciar PHP" o "Reiniciar servicios").
[WARNING] No pongas valores extremadamente altos (ej. 9999) porque podrías saturar el servidor. 300 segundos suele ser suficiente.
### Solución 2: Optimizar la conexión a la base de datos
PrestaShop es muy exigente con la base de datos. Vamos a asegurarnos de que la conexión sea correcta.
- Revisa el archivo de configuración de PrestaShop:
- Conéctate por FTP o desde el administrador de archivos de Syspanel.
- Busca el archivo
app/config/parameters.php(en PrestaShop 1.7+) oconfig/settings.inc.php(en versiones antiguas). - Ábrelo y verifica que los datos de la base de datos sean correctos:
database_host: suele serlocalhosto127.0.0.1.database_name: el nombre que creaste en Syspanel.database_user: el usuario de la base de datos.database_password: la contraseña correcta.
- Si todo está bien, pero el error persiste, prueba a cambiar
database_hostdelocalhosta127.0.0.1o viceversa. A veces el servidor interpreta uno mejor que el otro. - Aumenta el límite de conexiones simultáneas a MySQL:
- En Syspanel, ve a "Base de datos" > "MySQL".
- Busca la opción "Editar configuración" o "Parámetros avanzados".
- Localiza
max_connectionsy súbelo, por ejemplo, de 150 a 300 (si tu plan lo permite). - Guarda y reinicia MySQL desde Syspanel.
### Solución 3: Liberar recursos del servidor
Si el servidor está al límite, cualquier conexión nueva dará timeout.
- Detén procesos innecesarios:
- En Syspanel, ve a "Procesos" o "Gestión de procesos".
- Busca procesos que consuman mucha CPU o memoria (por ejemplo, un cron que se ejecuta cada minuto).
- Si ves algo sospechoso o que no debería estar corriendo, finalízalo (cuidado con no matar procesos del sistema).
- Revisa el uso de disco:
- Si el disco está lleno (más del 90%), el servidor puede funcionar muy lento o dar errores.
- En Syspanel, ve a "Estadísticas" o "Uso del disco".
- Si está lleno, elimina archivos temporales, logs antiguos o copias de seguridad que no necesites.
### Solución 4: Configurar correctamente el firewall en Syspanel
Syspanel incluye un firewall (iptables o UFW) que puede estar bloqueando conexiones.
- En Syspanel, ve a "Seguridad" > "Firewall".
- Asegúrate de que los puertos necesarios estén abiertos:
- 80 (HTTP)
- 443 (HTTPS)
- 3306 (MySQL, si necesitas conexión remota, pero normalmente solo local)
- 2106 (el puerto de Syspanel, déjalo abierto para que puedas acceder)
- Si ves una regla que bloquea IPs o puertos, revísala. A veces, sin querer, bloqueamos nuestro propio rango de IPs.
- Reinicia el firewall desde el mismo panel (suele haber un botón "Aplicar cambios" o "Reiniciar").
### Solución 5: Aumentar el tiempo de espera del servidor web (Apache/Nginx)
Si el problema ocurre al cargar la tienda (no al conectar con la base de datos), el servidor web puede estar cerrándose antes de tiempo.
-
Para Apache:
- En Syspanel, ve a "Configuración del servidor" > "Apache".
- Busca el archivo de configuración (normalmente
httpd.confo dentro de/etc/apache2/). - Localiza la directiva
Timeouty cámbiala a300. - Guarda y reinicia Apache desde Syspanel.
-
Para Nginx:
- Ve a "Configuración del servidor" > "Nginx".
- Busca la línea
keepalive_timeoutysend_timeouty ajústalas a300s. - Guarda y reinicia Nginx.
Preguntas frecuentes (FAQ)
P: ¿Por qué aparece el error solo en momentos de mucho tráfico?
R: Porque el servidor no da abasto. Aumenta los límites de PHP y MySQL, o considera mejorar tu plan de hosting si es recurrente.
P: ¿Puedo solucionarlo sin entrar a Syspanel?
R: No, necesitas Syspanel para reiniciar servicios, ver logs y modificar configuraciones del servidor. El acceso es por tu-dominio.com:2106.
P: ¿El error puede deberse a un módulo de PrestaShop?
R: Sí, a veces un módulo mal codificado hace consultas lentas que agotan el tiempo de espera. Prueba a desactivar módulos uno por uno desde el backoffice de PrestaShop (si puedes acceder).
P: ¿Qué hago si después de todo sigue el error?
R: Contacta con el soporte de tu hosting. Diles que ya revisaste logs, aumentaste timeouts y reiniciaste servicios desde Syspanel. Ellos podrán verificar problemas a nivel de servidor (hardware, red, etc.).
P: ¿Es seguro modificar los archivos de configuración desde Syspanel?
R: Sí, siempre que sepas lo que haces. Si tienes dudas, haz una copia de seguridad antes de cambiar nada.
Resumen y recomendaciones finales
El error "Connection timed out" en PrestaShop suele tener solución si sigues estos pasos:
- Diagnostica con Syspanel: revisa servicios y logs.
- Aumenta timeouts en PHP y servidor web.
- Verifica la conexión a la base de datos.
- Libera recursos del servidor.
- Revisa el firewall en Syspanel.
[INFO] Recuerda que Syspanel es tu aliado. Aprende a usar sus herramientas básicas (logs, servicios, configuración de PHP) y podrás resolver la mayoría de problemas de hosting tú mismo.
Si todo lo anterior falla, no dudes en pedir ayuda profesional. Pero con esta guía, tendrás un 90% de probabilidades de que tu tienda PrestaShop vuelva a funcionar sin problemas.
¿Te ha funcionado? Comparte este artículo con otros usuarios de PrestaShop que estén pasando por lo mismo. ¡Buena suerte con tu tienda!
