Resolver el error 'Error 500' o 'Internal Server Error' en tu web
¡Hola! Si estás leyendo esto, es muy probable que hayas intentado acceder a tu página web y, en lugar de tu contenido, te hayas encontrado con un mensaje tan frustrante como críptico: Error 500 o Internal Server Error. No te preocupes, no eres el único al que le pasa, y lo más importante: tiene solución.
Este es uno de los errores más comunes en el mundo del hosting, y aunque parece grave, en la mayoría de los casos se soluciona con unos pocos clics o ajustes. En esta guía extensa y paso a paso, voy a explicarte exactamente qué significa este error, por qué ocurre y, sobre todo, cómo solucionar el error 500 en tu web, ya sea en WordPress o en cualquier otro gestor de contenidos.
Vamos a ello. Respira hondo, porque vamos a convertir ese dolor de cabeza en una lección aprendida.
¿Qué significa realmente el Error 500 o Internal Server Error?
Antes de lanzarnos a arreglar nada, es fundamental entender qué está pasando. El error 500 es un mensaje de "error genérico" del servidor. A diferencia de un error 404 (que significa "página no encontrada") o un error 403 (acceso prohibido), el 500 es un cajón de sastre.
Básicamente, significa que el servidor donde está alojada tu web ha encontrado una condición inesperada que le impide completar tu solicitud. Es como si le pidieras a un chef que te prepare un plato, y él te dijera: "Lo siento, no puedo, algo ha salido mal en la cocina", sin darte más detalles.
Este error puede aparecer por mil razones diferentes, pero las más habituales suelen ser:
- Errores en el archivo
.htaccess: Este es un archivo de configuración crítico en servidores Apache. Si está dañado o tiene una línea incorrecta, todo el sitio puede colapsar. - Permisos de archivos incorrectos: Los archivos de tu web tienen "permisos" (quién puede leerlos, escribirlos o ejecutarlos). Si están configurados de forma demasiado estricta, el servidor no podrá leerlos.
- Problemas con PHP: Un error de sintaxis en un archivo PHP, una incompatibilidad de versiones o un límite de memoria agotado pueden provocar este fallo.
- Un plugin o tema defectuoso (en WordPress): Esta es la causa número uno en el error 500 WordPress. Un plugin mal codificado o un tema con errores pueden chocar con el núcleo de WordPress.
- Sobrecarga del servidor: A veces, el servidor simplemente está demasiado ocupado y no puede procesar todas las peticiones, dando como resultado un error 500.
- Corrupción de archivos: Una actualización interrumpida o una transferencia de archivos incompleta pueden dejar archivos corruptos.
Ahora que sabemos lo que es, vamos a la parte que te interesa: cómo solucionarlo.
Primeros auxilios: La solución rápida del Error 500
Antes de meternos en fregados técnicos, prueba estos pasos sencillos. A veces, el error es temporal y se resuelve solo.
1. Recarga la página (y prueba con otra red)
Parece una tontería, pero funciona. A veces el error 500 es un fallo puntual. Pulsa F5 o el botón de recargar. Si estás en el móvil, cierra y abre la app del navegador. También puedes intentar acceder desde otro dispositivo o red Wi-Fi (por ejemplo, desde los datos móviles) para descartar que el problema sea de tu conexión.
2. Borra la caché de tu navegador
Una caché corrupta puede mostrar errores antiguos. Ve a la configuración de tu navegador, busca "Borrar datos de navegación" o "Historial" y elimina la caché y las cookies. Si no sabes cómo, simplemente busca en Google "cómo borrar caché en [nombre de tu navegador]".
3. Reinicia tu router
Al igual que tu navegador, tu router puede tener una IP "atascada" o una caché DNS corrupta. Apágalo, espera 30 segundos y vuelve a encenderlo.
4. Prueba en modo incógnito
Abre una ventana de incógnito en tu navegador (Ctrl+Shift+N en Chrome o Ctrl+Shift+P en Firefox). Esto desactiva las extensiones del navegador, que a veces pueden interferir. Si la web carga en modo incógnito, el problema es una extensión (como un bloqueador de anuncios) y no tu web.
Si después de estos pasos el error 500 persiste, pasemos a la acción real. Necesitamos "entrar en la cocina" de tu servidor.
El diagnóstico: Accediendo a tu panel de control
Para solucionar el error 500 de raíz, necesitas acceder a tu panel de control de hosting. Aquí es donde gestionas tus archivos, bases de datos y configuraciones. Los paneles más comunes son cPanel, Plesk o, en nuestro caso, Syspanel (que es el nombre que usamos para HestiaCP, y que se accede a través del puerto 2106).
[INFO] Si tu hosting usa Syspanel (HestiaCP), la dirección para acceder a tu panel de control suele ser https://tudominio.com:2106. Recuerda, el puerto es el 2106.
Una vez dentro, tendrás dos herramientas principales a tu disposición: el Administrador de Archivos y el Administrador de Bases de Datos.
Herramienta 1: El Administrador de Archivos
Es como el explorador de archivos de tu ordenador, pero en el servidor. Desde aquí podrás ver, editar, subir y borrar archivos de tu web.
Herramienta 2: El Administrador de Bases de Datos (phpMyAdmin)
Aquí es donde se gestionan los datos de tu web (contenido, usuarios, opciones de configuración). Lo usaremos en un paso más avanzado.
Las 5 soluciones definitivas para el Error 500
Ahora sí, vamos con las soluciones concretas. Te las presento en orden de menor a mayor complejidad. Sigue los pasos con calma y, si algo no funciona, pasa al siguiente.
Solución 1: El archivo .htaccess (el sospechoso habitual)
Este es el primer archivo que debemos revisar. Es un archivo oculto en la raíz de tu web (normalmente en public_html o www).
Para solucionarlo:
- Abre el Administrador de Archivos de tu panel.
- Navega a la carpeta raíz de tu sitio (normalmente
public_html). - Busca el archivo
.htaccess. Si no lo ves, activa la opción "Mostrar archivos ocultos" en la configuración del administrador. - No lo edites todavía. Primero, vamos a renombrarlo para desactivarlo. Haz clic derecho sobre él y selecciona "Renombrar".
- Cámbiale el nombre a
.htaccess_backup(o algo similar). - Ahora, intenta acceder a tu web. Si el error 500 desaparece, ¡enhorabuena! El problema era tu
.htaccess.
¿Y ahora qué? Una vez que sabes que el problema es el .htaccess, tienes dos opciones:
- Opción A (Recomendada para WordPress): Ve a tu panel de administración de WordPress (si puedes acceder) y ve a Ajustes > Enlaces permanentes. Haz clic en "Guardar cambios" sin modificar nada. Esto regenerará un
.htaccesslimpio y funcional. - Opción B (Manual): Borra el archivo
.htaccess_backupy crea uno nuevo. Haz clic en "Archivo nuevo", nómbralo.htaccessy pégalo dentro el código básico de WordPress:
# 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
Si no usas WordPress, el contenido del .htaccess variará. Te recomiendo contactar con tu proveedor de hosting para que te den el código correcto.
Solución 2: Permisos de archivos y carpetas
Cada archivo y carpeta en tu servidor tiene un número de permisos (por ejemplo, 644 o 755). Si están mal configurados, el servidor no puede leerlos o ejecutarlos.
La configuración segura y estándar es:
- Carpetas: Permisos
755. - Archivos: Permisos
644. - Archivos especiales (como
wp-config.php): Permisos600o640.
Cómo cambiarlos:
-
Ve al Administrador de Archivos.
-
Selecciona todos los archivos y carpetas de la raíz de tu web (Ctrl+A o Cmd+A).
-
Haz clic derecho y selecciona "Permisos" o "Cambiar permisos".
-
Asegúrate de que las casillas estén así:
- Lectura: Marcadas para Propietario, Grupo y Público.
- Escritura: Marcada solo para Propietario.
- Ejecución: Marcada para Propietario, Grupo y Público (esto equivale a 755 para carpetas).
[WARNING] Para los archivos, el permiso debe ser 644 (no marques la casilla de "Ejecución" para archivos individuales). Si marcas ejecución en todos los archivos, puedes crear un agujero de seguridad.
-
Aplica los cambios. Si el error persiste, repite el proceso pero solo con las carpetas (permisos 755) y luego solo con los archivos (permisos 644).
Solución 3: La pesadilla de WordPress: plugins y temas
Si las soluciones anteriores no han funcionado, el error 500 WordPress muy probablemente se deba a un conflicto de un plugin o un tema. Aquí tienes que usar la lógica y el método científico.
Paso 1: Desactiva todos los plugins (por FTP o Administrador de Archivos)
No puedes desactivarlos desde el panel si tu web está caída. Así que vamos a hacerlo manualmente:
- Ve al Administrador de Archivos.
- Navega a
wp-contenty luego aplugins. - Este es el truco: Renombra la carpeta
pluginsaplugins_desactivados. - Intenta acceder a tu web. Si el error desaparece, el problema es un plugin.
¿Y ahora qué? WordPress, al no encontrar la carpeta plugins, desactivará todos los plugins automáticamente. Ahora:
- Renombra la carpeta de nuevo a
plugins(esto es importante para volver a activarlos). - Ve a tu panel de administración de WordPress (si ya puedes acceder).
- Ve a Plugins > Plugins instalados.
- Actívalos uno por uno, recargando tu web después de cada activación. Cuando la web vuelva a dar el error 500, habrás encontrado al culpable. Elimina o busca una alternativa a ese plugin.
Paso 2: Cambia al tema por defecto
Si el problema no era un plugin, es el tema.
- Ve al Administrador de Archivos.
- Navega a
wp-contenty luego athemes. - Verás una lista de temas. Renombra la carpeta del tema que estás usando (por ejemplo,
tema-eleganteatema-elegante_inactivo). - WordPress, al no encontrar tu tema, usará uno por defecto (como Twenty Twenty-Four). Intenta acceder a tu web. Si funciona, el problema es tu tema.
[TIP] Si renombras el tema y la web sigue rota, WordPress puede no tener un tema por defecto. En ese caso, descarga un tema gratuito de WordPress.org, súbelo a la carpeta themes y actívalo desde el panel.
Solución 4: Aumentar el límite de memoria de PHP
A veces, el error 500 se debe a que tu web necesita más memoria de la que el servidor le permite usar. Esto es muy común en WordPress con muchos plugins o una base de datos grande.
Cómo solucionarlo:
- Ve al Administrador de Archivos.
- Busca el archivo
wp-config.phpen la raíz de tu web. - Haz clic derecho y selecciona "Editar".
- Busca la línea que dice
define( 'WP_DEBUG', false );(o similar). - Justo antes de esa línea, añade esta línea de código:
define('WP_MEMORY_LIMIT', '256M');
- Guarda los cambios y sube el archivo de nuevo (si lo has editado en local). Prueba tu web.
Si no tienes wp-config.php (no usas WordPress), puedes intentar crear un archivo .htaccess con este contenido:
php_value memory_limit 256M
[WARNING] Si ninguna de estas opciones funciona, puede que tu plan de hosting no permita aumentar la memoria. En ese caso, contacta con tu proveedor.
Solución 5: La base de datos (último recurso)
Si todo lo demás falla, el problema podría estar en tu base de datos. A veces, una tabla se corrompe.
Para repararla:
- Ve a phpMyAdmin en tu panel de control.
- Selecciona tu base de datos (normalmente en el menú lateral izquierdo).
- En la parte inferior de la pantalla, verás una casilla que dice "Marcar todos" o "Seleccionar todo".
- En el desplegable "Con seleccionados", elige la opción "Reparar tabla".
- Espera a que termine. Esto puede tardar unos minutos.
[INFO] Esta acción repara tablas corruptas. Es una operación segura, pero es recomendable tener una copia de seguridad de la base de datos antes de hacerla.
¿Qué hago si nada de esto funciona?
Si has llegado hasta aquí y el error 500 persiste, es hora de pedir ayuda profesional.
- Revisa los logs de error: En tu panel de control (Syspanel, cPanel, etc.), busca la sección "Registros de errores" o "Error Logs". Estos archivos te dirán exactamente qué línea de código está fallando. Si no entiendes el log, copia el texto y pégaselo a tu soporte técnico.
- Contacta con tu proveedor de hosting: Ellos tienen acceso a los logs del servidor a un nivel más profundo y podrán diagnosticar el problema (como un fallo de hardware o una configuración del servidor). Diles que ya has probado a desactivar plugins, temas, y que has revisado el
.htaccess. Esto les ahorrará tiempo y te ayudará a obtener una respuesta más rápida.
Preguntas Frecuentes (FAQ) sobre el Error 500
¿El error 500 es lo mismo que el error 502 o 503?
No, aunque son "primos". El 500 es un error genérico del servidor. El 502 (Bad Gateway) significa que un servidor intermedio no recibió una respuesta válida, y el 503 (Service Unavailable) significa que el servidor está saturado o en mantenimiento. Las soluciones para el 502 y 503 suelen ser distintas.
¿Puedo perder mis datos si se produce un error 500?
En la gran mayoría de los casos, no. Un error 500 es un problema de configuración o de ejecución, no de almacenamiento. Tus archivos y tu base de datos siguen intactos. Sin embargo, siempre es una buena práctica tener copias de seguridad periódicas de tu web.
¿Cuánto tiempo tarda en solucionarse un error 500?
Depende de la causa. Si es un plugin conflictivo, puedes solucionarlo en 5 minutos. Si es un problema del servidor, tu proveedor de hosting podría tardar unas horas.
¿Cómo puedo evitar el error 500 en el futuro?
- Mantén WordPress, tus plugins y temas siempre actualizados.
- Antes de actualizar algo importante, haz una copia de seguridad.
- No instales plugins o temas de fuentes no confiables.
- No modifiques archivos core de WordPress (como
wp-config.phpo.htaccess) sin saber lo que haces. Si tienes dudas, pide ayuda
