¿La web no responde en absoluto, ni siquiera con un error? Entonces empieza por qué hacer cuando la web está caída. Esta guía es para cuando el servidor sí responde, pero con un error 500.
El temido Error 500 Internal Server Error
Entras en tu web y en vez de tu contenido ves una página en blanco con "500 Internal Server Error". Tranquilo, es más común de lo que piensas y casi siempre tiene solución rápida.
Causas más comunes
1. Archivo .htaccess corrupto
Solución: Renombra .htaccess a .htaccess_backup por FTP.
2. Límite de memoria PHP
Solución: Añade a wp-config.php:
define('WP_MEMORY_LIMIT', '256M');
3. Plugin defectuoso
Solución: Renombra /wp-content/plugins/ por FTP.
4. Versión PHP incompatible
Solución: Cambia versión PHP en cPanel.
Cómo ver el error real
En wp-config.php:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
Revisa wp-content/debug.log.
Antes de tocar nada: mira el log
Un error 500 es el servidor diciendo "algo ha petado" sin contarte el qué. Esa información existe, solo que no se le enseña al visitante. Está en el log de errores, y mirarlo te ahorra la mitad del trabajo.
- Hosting compartido: busca el apartado "Errores" del panel, o un fichero
error_logen la raíz. - Con acceso SSH:
tail -50 /var/log/apache2/error.log, o el equivalente de nginx.
La línea que buscas suele nombrar el fichero exacto y el número de línea donde reventó. Con eso dejas de adivinar.
Cuando no es WordPress
Casi todas las guías de error 500 dan por hecho que usas WordPress. Si no es tu caso, los sospechosos son otros:
- Permisos mal puestos. Un PHP con permisos de escritura para todo el mundo hace que muchos servidores se nieguen a ejecutarlo. Lo normal es 644 en ficheros y 755 en carpetas.
- Una extensión de PHP que ya no está. Tras una actualización del servidor, el código que dependía de ella devuelve 500 sin más explicación.
- Un proceso que se pasa de tiempo. Si el 500 solo sale en páginas pesadas, mira el
max_execution_time.
Cómo saber si el problema es tuyo o del servidor
Antes de pasarte la tarde revisando código, descarta lo obvio: sube un fichero prueba.php con una sola línea que imprima cualquier cosa y ábrelo. Si ese también da 500, tu web no tiene la culpa: es la configuración del servidor, y la conversación es con tu hosting.
Y si el error va y viene sin patrón, sospecha de los límites de recursos del plan. Cuando se agotan, el servidor corta y devuelve 500.
¿No consigues solucionarlo? escríbenos al soporte urgente: hay técnico mirándolo en menos de 1 hora, se pague por uso o se tenga soporte contratado. Y para evitar que vuelva a pasar, echa un ojo a nuestros planes de mantenimiento.
Equipo Codanter
Desarrollo web, IA y automatización