Solucionar el error 500 en WordPress y PrestaShop
¡Hola! Si estás leyendo esto, es muy probable que hayas visto la temida pantalla blanca con el mensaje "Error 500" o "Internal Server Error" en tu tienda online o página web. No te preocupes, no eres el único y, sobre todo, tiene solución.
Este error es uno de los más comunes en el mundo del hosting y, aunque parece grave, en la mayoría de los casos se resuelve en pocos minutos si seguimos los pasos adecuados. En esta guía extensa y detallada, vamos a desglosar exactamente qué significa este error, por qué ocurre y, lo más importante, cómo solucionar el error 500 en WordPress y PrestaShop paso a paso, incluso si no eres un experto en tecnología.
Vamos a ello.
¿Qué es exactamente el Error 500?
Antes de empezar a tocar archivos, es fundamental entender qué está pasando. El error 500 (o "Internal Server Error") es un código de estado HTTP genérico que significa que algo salió mal en el servidor, pero el servidor no puede especificar cuál es el problema exacto.
Piénsalo así: tú entras a una tienda física (tu web) y el vendedor (el servidor) te dice "lo siento, no puedo atenderte ahora", pero no te da una razón clara. Puede ser que se haya quedado sin luz, que haya roto algo en el almacén (la base de datos) o que haya un problema con el uniforme (el tema). Es un error "comodín".
A diferencia de un error 404 (página no encontrada) que es claro, el error 500 hosting puede deberse a múltiples factores. Los más comunes son:
- Errores de permisos de archivos: Los archivos tienen configuraciones de seguridad incorrectas.
- Errores en el archivo
.htaccess: Un archivo de configuración crítico para el funcionamiento de Apache (el software del servidor). - Límite de memoria PHP agotado: Tu web necesita más memoria de la que el servidor le permite usar.
- Errores en el código PHP: Un plugin o tema con errores de programación.
- Problemas con la base de datos: Conexiones corruptas o sobrecarga de consultas.
- Archivos corruptos: Algún archivo esencial se ha dañado o no se ha subido correctamente.
La buena noticia es que atacando estos puntos, podremos arreglar el error 500 web sin necesidad de ser un programador senior.
Fase 1: Diagnóstico Rápido (El "Modo Detective")
Antes de tocar nada, vamos a hacer un par de comprobaciones rápidas para acotar el problema. Esto te ahorrará mucho tiempo.
1. Comprueba si el error es general o solo tuyo
A veces el problema es del servidor en general y no de tu web. Puedes usar herramientas online como "Down For Everyone Or Just Me" para ver si la web está caída para todo el mundo o solo para ti. Si solo es para ti, puede ser un problema de caché local o de tu conexión.
2. Revisa el registro de errores del servidor
Esta es la clave del éxito. El servidor guarda un "diario" de lo que ocurre. Accede a tu panel de control de hosting (cPanel, Plesk, Syspanel, etc.) y busca la sección de "Registros de errores" o "Error Logs".
- [TIP]: Si tu hosting usa Syspanel (antes conocido como HestiaCP), recuerda que el acceso se realiza a través del puerto 2106 (ej:
https://tu-dominio.com:2106). Dentro, busca el apartado de "Logs" o "Registros".
Aquí verás la causa exacta. Busca la última línea que corresponda a la fecha y hora actual. El mensaje te dirá si es un problema de memoria, de un archivo específico o de permisos.
Fase 2: Solucionar el Error 500 en WordPress
WordPress es muy sensible a los permisos y a los plugins. Sigue estos pasos en orden. No los saltes, ya que son de menor a mayor complejidad.
Paso 1: Desactiva todos los plugins (la solución más común)
Un plugin conflictivo causa más del 50% de los errores 500 en WordPress. Para desactivarlos sin entrar al panel de administración (que estará caído), tendrás que hacerlo por FTP o por el administrador de archivos de tu hosting.
- Accede a tu hosting vía FTP (con FileZilla, por ejemplo) o al "Administrador de Archivos" en cPanel o Syspanel.
- Navega hasta la carpeta
wp-content/. - Busca la carpeta llamada
plugins. - Renómbrala a algo como
plugins_desactivados. Esto fuerza a WordPress a desactivar todos los plugins, ya que no encuentra la carpeta original. - Intenta cargar tu web.
-
Si el error desaparece, el problema era un plugin.
-
Para encontrar el culpable, crea una carpeta nueva llamada
pluginsy ve moviendo los plugins deplugins_desactivadosa la nueva carpeta de uno en uno, recargando la web cada vez hasta que falle. Ese es el plugin malo. Bórralo o actualízalo. -
[WARNING]: Si renombras la carpeta, perderás las configuraciones activas de los plugins hasta que la renombres de nuevo. Es una solución temporal para el diagnóstico.
Paso 2: Revisa el archivo .htaccess
Este archivo es el "manual de instrucciones" del servidor. Si está corrupto, todo falla.
- Ve a la raíz de tu instalación de WordPress (donde están las carpetas
wp-admin,wp-content, etc.). - Busca el archivo
.htaccess. Si no lo ves, activa la opción de "mostrar archivos ocultos" en tu cliente FTP. - Renómbralo a
.htaccess_backup. - Recarga tu web.
- Si se arregla, WordPress creará uno nuevo automáticamente la próxima vez que guardes los enlaces permanentes (Ajustes > Enlaces permanentes).
- Si el error persiste, continúa con el siguiente paso.
Paso 3: Aumenta el límite de memoria PHP
A veces el error es porque tu web necesita más memoria de la que tiene asignada.
- Accede al archivo
wp-config.phpen la raíz de WordPress. - Busca la línea que dice
define('WP_DEBUG', false);o similar. - Justo antes de esa línea, añade esta nueva línea:
define('WP_MEMORY_LIMIT', '256M');
- Guarda el archivo y recarga tu web.
- [INFO]: Si no funciona con 256M, prueba con 512M. Si el problema persiste, es que el servidor no tiene suficiente memoria física o el límite está establecido a nivel de servidor y no puedes cambiarlo desde aquí.
Paso 4: Verifica los permisos de archivos
Los permisos deben ser específicos para que el servidor pueda leer y ejecutar pero no modificar sin permiso.
- Carpetas: Deben tener permiso
755. - Archivos: Deben tener permiso
644.
Puedes seleccionar todos los archivos y carpetas en tu cliente FTP y establecer estos permisos. No hagas esto si no estás seguro, ya que podrías dejar la web más insegura, pero es un paso estándar para solucionar el error 500.
Fase 3: Solucionar el Error 500 en PrestaShop
PrestaShop es más complejo en su estructura, pero los pasos son similares. El error suele venir de la caché o de archivos de configuración.
Paso 1: Limpia la caché manualmente
PrestaShop es famoso por sus problemas de caché que generan errores 500.
- Accede a tu hosting por FTP o Administrador de Archivos.
- Navega a la carpeta
var/cache(en versiones 1.7+) ocache(en versiones 1.6). - Dentro de
var/cache, verás una carpeta llamadadevoprod. Entra en la que corresponda (normalmenteprod). - Borra todo el contenido de esa carpeta (los archivos con extensión
.phpy las subcarpetas). No borres la carpeta en sí, solo su contenido. - Recarga tu tienda.
- [TIP]: Si no puedes borrarlos, renombra los archivos
.phpdentro de la carpetacacheovar/cacheañadiendo.bakal final.
Paso 2: Revisa los permisos de la carpeta de caché
Después de borrar, es posible que el servidor no pueda escribir en esa carpeta. Asegúrate de que la carpeta cache o var/cache tenga permisos 755 o incluso 777 temporalmente para que pueda regenerar los archivos.
- [WARNING]: Los permisos
777son inseguros. Úsalos solo para solucionar el problema y luego vuelve a ponerlos a755.
Paso 3: Desactiva la caché de Smarty (si puedes acceder al panel)
Si logras entrar al panel de administración de PrestaShop (a veces el error solo afecta a la tienda, no al admin):
- Ve a Parámetros Avanzados > Rendimiento.
- En "Caché de plantillas", selecciona "No usar caché". Guárdalo.
- En "Caché de combinación de archivos", desactívala también.
Paso 4: Revisa el archivo config/settings.inc.php (para PrestaShop 1.6)
En versiones antiguas, este archivo guarda los datos de conexión a la base de datos. Si está corrupto, la tienda falla.
- Abre el archivo
config/settings.inc.php. - Verifica que los datos de conexión (
database_host,database_name,database_user,database_password) son correctos. Si tu hosting cambió la contraseña de la BD recientemente, este archivo no se habrá actualizado y dará error.
Fase 4: Soluciones Avanzadas (Cuando Nada de lo Anterior Funciona)
Si has llegado hasta aquí y el error 500 hosting persiste, es hora de mirar el entorno del servidor.
1. El límite de ejecución de PHP (Max Execution Time)
A veces, un script tarda demasiado en ejecutarse y el servidor lo mata con un error 500. Puedes intentar aumentar este límite en el archivo .htaccess (en WordPress) o en el php.ini (si tienes acceso).
Añade esto al .htaccess:
<IfModule mod_php7.c>
php_value max_execution_time 300
php_value max_input_time 300
php_value memory_limit 256M
</IfModule>
2. Contacta con tu proveedor de hosting
Si has agotado todas las opciones, el problema puede estar en el servidor en sí (un módulo de Apache caído, un problema de red interna, etc.). Es el momento de abrir un ticket de soporte.
- [INFO]: Cuando contactes con ellos, diles exactamente lo que has hecho y, si puedes, copia y pega el error exacto del log del servidor. Esto acelerará enormemente la resolución. Si tu hosting usa Syspanel, menciona que has revisado los logs a través del puerto 2106 y que el problema no es de la aplicación.
3. Restaura una copia de seguridad
Si tienes una copia de seguridad reciente de tu web (antes de que empezara el error), restaurarla es la solución más rápida y limpia. La mayoría de los hostings ofrecen copias de seguridad automáticas en tu panel de control. Busca la sección "Copias de seguridad" o "Backups" en cPanel, Plesk o Syspanel.
Preguntas Frecuentes (FAQ) sobre el Error 500
Para finalizar, aquí tienes las respuestas a las dudas más comunes que nos suelen plantear:
¿El error 500 significa que he perdido mis datos?
No, absolutamente no. El error 500 es un error de comunicación entre el servidor y tu web. Tus archivos, fotos y base de datos siguen intactos en el servidor. Es un problema de configuración o de ejecución, no de pérdida de datos.
¿Por qué me pasa solo a veces?
Si el error es intermitente, suele ser un síntoma de sobrecarga del servidor (demasiados visitas a la vez) o de un límite de memoria muy ajustado. Revisa los logs para ver si coincide con picos de tráfico.
¿Puedo prevenir el error 500?
Sí, en gran medida.
- Mantén todo actualizado: WordPress, PrestaShop, temas y plugins.
- Usa plugins y temas de calidad: Evita los "nulled" o piratas.
- Aumenta la memoria PHP por defecto en tu
wp-config.phpophp.inisi tu hosting lo permite. - No modifiques archivos del núcleo (core) directamente.
¿Qué hago si no tengo acceso al panel de administración?
No pasa nada. Todos los pasos que hemos descrito se pueden hacer por FTP (FileZilla es gratuito) o a través del "Administrador de Archivos" que incluye tu panel de hosting. No necesitas entrar al admin de WordPress o PrestaShop para arreglar el error 500 web.
Conclusión: No te rindas
Ver un error 500 en WordPress o error 500 en PrestaShop puede ser frustrante, pero es uno de los problemas más comunes y con una de las soluciones más documentadas. Siguiendo esta guía paso a paso, en el 90% de los casos lo resolverás en menos de 30 minutos.
Recuerda el orden de acción:
- Revisa los logs para saber qué está fallando.
- Desactiva plugins (WordPress) o limpia la caché (PrestaShop).
- Revisa el
.htaccessy los permisos. - Aumenta la memoria PHP.
- Contacta con tu hosting si todo lo demás falla.
Con paciencia y estos conocimientos, tendrás tu web funcionando de nuevo en muy poco tiempo. ¡Mucho ánimo y a por ello!
