
Gestionar un servidor tiene sus momentos de gloria, pero también sus pesadillas. El temido Error 500 es una de ellas. Saber solucionar error 500 no es solo una habilidad técnica; es casi una necesidad de supervivencia. Ese mensaje de «Internal Server Error» es de una vaguedad irritante: te avisa de que algo se rompió, pero no te dice el qué. Aun así, si dejas el pánico a un lado y actúas con orden, la solución suele estar al alcance de la mano. Vamos a repasar qué suele estar detrás de este fallo y cómo arreglarlo.
Índice
Qué es el Error 500 Internal Server Error
No se parece a un 404, donde es obvio que falta una página, ni a un 403. El error 500 es una respuesta genérica del servidor ante una condición que no esperaba y que le impide cumplir tu petición. Es un código que actúa como un paraguas, escondiendo cualquier cosa: desde un guion de PHP mal escrito hasta un desastre con los permisos de archivos o que la memoria se ha agotado del todo.
Pasos previos: Diagnóstico mediante Logs
Antes de ponerte a tocar archivos a lo loco, tómate un respiro. Para solucionar error 500 con éxito, el primer paso no es probar suerte, sino ir directo a los registros de errores (logs). Sin esa información, estás navegando a ciegas.
- En servidores Linux/cPanel: Ve a la sección de errores en tu panel o, si te manejas bien con la terminal, abre el log vía SSH. Suele estar en
/var/log/apache2/error.logo en/var/log/nginx/error.log. - En WordPress: A veces el fallo no lo registra el servidor, sino el propio CMS. Revisa tu archivo
wp-config.php. Si tienesWP_DEBUGactivado, el error específico aparecerá en tu pantalla en lugar del mensaje vacío del 500.
En cuanto localices el error en el log (algo tipo «Fatal error: Allowed memory size…»), ya tendrás el mapa claro.
Causas comunes y soluciones
1. Se agotó la memoria de PHP
Es de lo más común, sobre todo en sitios de WordPress que pesan bastante o tienen muchos plugins. Si el script pide más RAM de la que tiene permitida, el servidor mata el proceso y el sitio se cae.
Solución en WordPress: Edita tu archivo wp-config.php y mete esta línea justo antes de donde dice «¡Eso es todo, no edites más!»:
define( 'WP_MEMORY_LIMIT', '256M' );
Si con esto no hay suerte, tendrás que llamar a tu proveedor de hosting para que suba el límite en el archivo php.ini del servidor.
2. El archivo .htaccess está dañado
¿Has tocado algo de seguridad? ¿Redirigido URLs? Si has metido la pata con la sintaxis en el archivo .htaccess, todo el sitio deja de responder.
Solución: Entra por FTP o con tu gestor de archivos y cambia el nombre del archivo .htaccess a .htaccess_old. Recarga la web. Si funciona, ya sabes dónde estaba el problema.
Para que WordPress te genere uno limpio, ve a Ajustes > Enlaces permanentes y haz clic en «Guardar cambios» sin tocar nada más.
3. Pelea entre Plugins o Temas
A veces una actualización reciente trae código mal programado que bloquea el resto. Es frustrante, pero pasa.
- Entra por FTP y renombra la carpeta
/wp-content/pluginsa/wp-content/plugins_OLD. - La web debería cargar ahora (aunque se vea un poco extraña sin los plugins).
- Devuelve a la carpeta su nombre original.
- Entra dentro y empieza a renombrar las carpetas de los plugins uno a uno. Cuando el error reaparezca, el último que renombraste es el culpable.
4. Permisos de archivos mal configurados
En Unix, los permisos son ley. Dicen quién puede leer, escribir o ejecutar. Si pones los permisos demasiado abiertos (como el temido 777) o demasiado restrictivos, el servidor se niega a ejecutar el script.
Solución recomendada: Asegúrate de que los directorios tengan permisos 755 y los archivos 644. Puedes arreglar esto de golpe si tienes acceso root por SSH:
find /ruta/a/tu/web -type d -exec chmod 755 {} \;
find /ruta/a/tu/web -type f -exec chmod 644 {} \;
5. Usas una versión de PHP vieja
Si actualizas tu CMS a la última versión pero el servidor sigue corriendo una versión de PHP antigua, las funciones nuevas no encontrarán apoyo y el sitio colapsará.
Solución: Mira qué versión de PHP estás usando en tu panel (cPanel, Plesk, etc.) y actualiza a la más estable que sea compatible con tu aplicación (normalmente PHP 8.1 o 8.2 para un WordPress moderno).
Cuándo es hora de llamar a un experto
Si ya revisaste los logs, comprobaste los permisos, desactivaste los plugins y el sitio sigue en blanco, el problema es profundo. Puede que sea la configuración base de Apache o Nginx, una librería del sistema rota o incluso hardware fallando. En estos escenarios, toquetear archivos del núcleo sin saber puede dejarte sin servidor por completo.
¿Necesitas intervención de nivel 3?
Si no tienes acceso SSH o los logs no muestran nada útil, el problema requiere un análisis profundo por administradores de sistemas. En RedServicio (redservicio.net) ofrecemos servicios de administración de servidores y rescate de sitios web para estos casos complicados.
Cierre
Para solucionar error 500 de verdad, hay que cambiar el chip: no es un problema abstracto, es una escena del crimen. Tu mejor herramienta es el archivo de registro; ahí suele estar la prueba del delito, la línea exacta que rompió la web. Empieza por descartar lo último que tocaste (plugins, temas), sigue con la memoria y permisos, y deja la configuración del servidor para el final. Y, por supuesto, siempre mantén una copia de seguridad reciente para poder dar marcha atrás si algo sale mal.

