El error HTTP 500 (Internal Server Error) significa que el servidor encontró una condición inesperada que le impidió completar la solicitud. No es un problema en tu navegador ni en tu conexión: el fallo está en el servidor que aloja tu sitio.
En esta guía encontrarás las causas más frecuentes y los pasos exactos para diagnosticar y resolver el error 500, sin importar si tu sitio corre sobre WordPress, PHP puro o cualquier otro CMS.
¿Qué es exactamente el error 500?
El código de estado HTTP 500 es la respuesta genérica del servidor cuando algo sale mal en su propio procesamiento. A diferencia del error 404 (recurso no encontrado) o el 403 (acceso denegado), el 500 no dice qué salió mal; solo confirma que el problema está del lado del servidor.
Puede presentarse de distintas formas según el servidor y el CMS:
- 500 Internal Server Error (la forma estándar)
- HTTP Error 500
- There is a problem with the resource you are looking for (IIS de Microsoft)
- Pantalla en blanco sin mensaje (muy común en WordPress con WP_DEBUG desactivado)
Causas más comunes y cómo identificarlas
1. Archivo .htaccess corrupto o mal configurado
El archivo .htaccess controla reglas de reescritura, redirecciones y configuraciones de Apache. Una sola línea incorrecta provoca error 500 de inmediato.
Cómo verificarlo: Renombra el archivo temporalmente (por ejemplo, .htaccess_bk) y recarga el sitio. Si el error desaparece, el problema está ahí. Revisa línea por línea o restaura desde tu backup más reciente.
En WordPress, el .htaccess básico para permalinks es:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
2. Permisos de archivos y directorios incorrectos
Los archivos PHP deben tener permisos 644 y los directorios 755. Si alguien (o un plugin) los cambió a 777 o a 400, Apache puede negarse a ejecutarlos y lanzar un 500.
Corrección vía SSH:
find /ruta/a/tu/sitio -type f -exec chmod 644 {} \;
find /ruta/a/tu/sitio -type d -exec chmod 755 {} \;
3. Errores de PHP: memoria agotada o código roto
Un script PHP que consume más memoria de la permitida, o que tiene un error de sintaxis, termina en error 500. Esto es especialmente frecuente después de actualizar un plugin o tema en WordPress.
Para diagnosticarlo, activa los logs de errores de PHP. En php.ini o en un archivo .user.ini dentro de tu public_html:
log_errors = On
error_log = /ruta/a/php_errors.log
display_errors = Off
Luego revisa el log. Si el problema es memoria, aumenta el límite:
memory_limit = 256M
4. Plugin o tema defectuoso (WordPress y CMS similares)
Si el error aparece justo después de instalar o actualizar un plugin, desactívalo desde el panel de administración o, si no puedes acceder, renombra la carpeta del plugin vía FTP/SSH:
mv wp-content/plugins/nombre-plugin wp-content/plugins/nombre-plugin_OFF
Si la pantalla en blanco te impide entrar al admin, desactiva todos los plugins renombrando la carpeta completa plugins a plugins_OFF, y luego reactívalos de uno en uno.
5. Tiempo de ejecución de PHP agotado (timeout)
Un script que tarda más de lo permitido puede generar un 500. Ajusta el timeout en .user.ini:
max_execution_time = 120
6. Problemas en el servidor o en el hosting
Si ninguno de los pasos anteriores resuelve el problema, el fallo puede estar en el servidor mismo: saturación de recursos, caída de un servicio (MySQL, PHP-FPM) o un bug en la versión de PHP que usas.
Compara la versión de PHP recomendada para tu CMS. WordPress, por ejemplo, recomienda PHP 8.1+. Si estás en 7.4 o menos, una actualización puede resolver incompatibilidades. El soporte técnico de tu proveedor de hosting debe poder revisar los logs del servidor.
Pasos de diagnóstico en orden lógico
- Revisa los logs de error del servidor (error_log de Apache o el log de PHP). Es el primer y más importante paso.
- Deshabilita temporalmente el .htaccess: renómbralo y recarga.
- Verifica permisos: 644 para archivos, 755 para directorios.
- Desactiva plugins/extensiones uno a uno para identificar el culpable.
- Revisa la memoria y el timeout de PHP en los archivos de configuración.
- Cambia a un tema por defecto (Twenty Twenty-Four en WordPress) para descartar el tema activo.
- Contacta a tu hosting con los mensajes exactos del log.
Herramientas para encontrar el error rápido
| Herramienta | Qué te muestra | Acceso |
|---|---|---|
| Log de errores de Apache | Mensaje exacto del fallo | cPanel → Logs de errores / SSH |
| Log de PHP | Errores de sintaxis y memoria | Ruta definida en php.ini |
| WP_DEBUG (WordPress) | Traza completa del error en pantalla | wp-config.php (solo en dev) |
| Query Monitor (plugin) | Queries lentas, hooks con errores | WordPress admin |
Un equipo de mantenimiento web profesional monitorea estos logs de forma continua y resuelve errores 500 antes de que afecten a tus usuarios.
Cómo prevenir errores 500 en el futuro
Resolver un error 500 puntual es solo la mitad del trabajo. Prevenir que vuelva a ocurrir requiere disciplina de mantenimiento:
- Haz backups antes de cada actualización de plugins, temas o el núcleo del CMS.
- Usa un entorno de staging para probar cambios antes de subirlos a producción.
- Monitorea tu sitio con alertas de disponibilidad (UptimeRobot, BetterUptime) para detectar caídas al instante.
- Mantén PHP actualizado a la versión estable más reciente compatible con tu stack.
- Revisa el límite de memoria y el timeout de PHP cuando instales plugins pesados (constructores de página, WooCommerce, etc.).
Si el mantenimiento preventivo te parece una carga, considera explorar nuestras guías de rendimiento y mantenimiento web para implementar un flujo de trabajo más robusto.
Conclusiones clave
- El error 500 siempre tiene su origen en el servidor, nunca en el navegador del visitante.
- El primer paso es revisar los logs: sin ellos, todo diagnóstico es a ciegas.
- El
.htaccesscorrupto y los permisos incorrectos son las causas más frecuentes y más fáciles de corregir. - En WordPress, los plugins y temas defectuosos son la segunda causa más habitual.
- Aumentar el límite de memoria y el timeout de PHP resuelve muchos errores 500 relacionados con scripts pesados.
- La prevención —backups, staging y monitoreo— evita que un error puntual se convierta en una crisis.
¿Tu sitio sigue cayendo con error 500 y no encuentras la causa? Contáctanos en elenlace.com — nuestro equipo técnico revisa los logs, identifica el problema y lo soluciona sin que pierdas más tiempo ni ventas.
Preguntas frecuentes
¿El error 500 afecta mi posicionamiento en Google?
Sí, si el error persiste varios días. Googlebot registra los errores 500 como señal de que el sitio no es confiable. Un error puntual de minutos rara vez tiene impacto, pero una caída prolongada puede afectar el crawl budget y el ranking de tus páginas.
¿Puedo ver el error 500 yo mismo sin acceso SSH?
Sí. La mayoría de los paneles de hosting (cPanel, Plesk) incluyen un visor de logs de errores. También puedes activar WP_DEBUG en WordPress temporalmente para ver el error directamente en pantalla, aunque nunca debes dejarlo activo en producción.
¿Cuánto tiempo tarda en resolverse un error 500?
Si tienes acceso a los logs, la causa más común (htaccess, permisos o plugin) se identifica en 5 a 15 minutos. Sin acceso a logs, el diagnóstico puede extenderse. Un hosting con soporte técnico 24/7 es clave para resoluciones rápidas.
¿El error 500 y la pantalla blanca de WordPress son lo mismo?
No exactamente, pero suelen tener la misma causa. La "pantalla blanca de la muerte" de WordPress es un error 500 con WP_DEBUG desactivado, lo que suprime el mensaje de error. Al activar WP_DEBUG verás el mensaje real del fallo de PHP.
Compara proveedores
Otros proveedores y guías que vale la pena comparar: