Cómo solucionar el error 500 Internal Server Error en WordPress (Plesk y cPanel)
¿Qué es el error 500 Internal Server Error en WordPress?
El error 500 WordPress es uno de los más temidos, pero también uno de los más fáciles de resolver si sabes por dónde empezar. Es un mensaje genérico que indica que algo falló en el servidor, pero no te dice exactamente qué. Es como si el servidor dijera: "Algo se rompió aquí dentro, pero no voy a darte más detalles".
A diferencia de otros errores más específicos, el Internal Server Error WordPress puede aparecer en cualquier momento: al instalar un plugin, al actualizar el tema, al subir una imagen o incluso sin hacer nada. La buena noticia es que el 95% de las veces tiene una solución sencilla que puedes aplicar tú mismo, tanto si tu hosting usa cPanel como si usa Plesk.
En esta guía extensa y práctica, vamos a desglosar todas las causas posibles y te voy a dar los pasos exactos para solucionar error 500 en WordPress, ordenados de la solución más fácil a la más avanzada.
Causas más comunes del error 500 en WordPress
Antes de lanzarnos a tocar archivos, es importante entender qué puede estar provocando el problema:
- Un plugin o tema incompatible con tu versión de WordPress o PHP.
- Límite de memoria PHP agotado (muy típico en sitios con muchos plugins).
- Archivos con permisos incorrectos (por ejemplo, archivos con permisos 777 cuando deberían ser 644).
- Errores en el archivo
.htaccess(muy frecuente en Apache). - Problemas con el archivo
wp-config.php(algún carácter extra o configuración errónea). - Versión de PHP desactualizada o incompatible con tu instalación.
- Corrupción de archivos core de WordPress (por una actualización interrumpida).
Primeros pasos: antes de tocar nada
1. Recarga la página y borra la caché del navegador
A veces el error 500 es temporal. Un plugin que consume muchos recursos o un pico de tráfico puede provocarlo y resolverse solo. Haz lo siguiente:
- Pulsa Ctrl + F5 (o Cmd + Shift + R en Mac) para forzar la recarga sin caché.
- Prueba en modo incógnito.
- Espera 2-3 minutos y vuelve a intentar.
2. Revisa el correo de tu hosting
Tu proveedor de hosting (tanto cPanel como Plesk) suele enviarte un correo automático cuando hay un error crítico en el servidor. Ese correo contiene la ruta exacta del archivo que está fallando. Si lo encuentras, ve directo al paso correspondiente de esta guía.
3. Habilita el modo debug de WordPress
Aunque no veas el error en pantalla, WordPress puede registrarlo en un archivo de log. Para activarlo:
- Conéctate a tu hosting por FTP (FileZilla, por ejemplo) o usa el Administrador de archivos de cPanel o Plesk.
- Localiza el archivo
wp-config.phpen la raíz de tu instalación. - Ábrelo con un editor de texto (el Bloc de notas sirve).
- Busca esta línea:
define('WP_DEBUG', false); - Cámbiala por:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
- Guarda el archivo y sube los cambios vía FTP.
- Ahora intenta cargar tu web de nuevo.
- Revisa la carpeta
wp-contenty busca un archivo llamadodebug.log. Ábrelo y verás el error exacto con la línea y el archivo implicado.
[TIP] Una vez resuelto el problema, vuelve a cambiar WP_DEBUG a false para no exponer información sensible en producción.
Solución 1: Desactiva todos los plugins (la causa más común)
Si el error 500 apareció después de instalar o actualizar un plugin, este es tu primer paso. No te preocupes, no perderás ninguna configuración.
Si tienes acceso al panel de administración de WordPress:
- Ve a Plugins → Plugins instalados.
- Marca todos los plugins con la casilla superior.
- En el desplegable "Acciones en bloque", selecciona Desactivar.
- Pulsa Aplicar.
Si NO tienes acceso a wp-admin (pantalla blanca o error directo):
Necesitas desactivarlos por FTP o desde el panel de tu hosting:
- Accede a tu hosting por FTP o al Administrador de archivos de cPanel o Plesk.
- Navega hasta
public_html/wp-content/(ohttpdocs/si usas Plesk). - Busca la carpeta
plugins. - Haz clic derecho y selecciona Cambiar nombre. Ponle
plugins_desactivados. - Intenta cargar tu web. Si funciona, el problema es uno de los plugins.
[INFO] Al renombrar la carpeta, WordPress desactiva todos los plugins automáticamente porque no encuentra la carpeta original.
Cómo identificar el plugin problemático:
- Crea una carpeta nueva llamada
plugins(vacía). - Ve moviendo los plugins de
plugins_desactivadosapluginsde uno en uno. - Después de cada movimiento, carga tu web.
- Cuando aparezca el error 500, habrás encontrado al culpable. Elimina o reemplaza ese plugin.
Solución 2: Revisa el archivo .htaccess
El archivo .htaccess controla las reglas de reescritura de URLs y otras configuraciones del servidor Apache. Si está corrupto, el error 500 cPanel es muy habitual.
Cómo restaurar el .htaccess desde cPanel:
- Ve al Administrador de archivos en cPanel.
- Entra en la carpeta
public_html. - Busca el archivo
.htaccess(asegúrate de activar "Mostrar archivos ocultos"). - Haz clic derecho → Cambiar nombre →
htaccess_antiguo.txt. - Ve a Ajustes de WordPress → General y guarda los cambios (esto regenera el archivo automáticamente).
- Si no puedes entrar a wp-admin, crea un
.htaccessnuevo desde el editor de archivos con este contenido:
# 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 usas Plesk:
El proceso es idéntico, pero la carpeta raíz suele llamarse httpdocs en lugar de public_html. El archivo .htaccess tiene la misma estructura.
Solución 3: Aumenta el límite de memoria PHP
Muchas veces el Internal Server Error WordPress aparece porque el sitio se queda sin memoria. Esto es muy común si tienes muchos plugins o usas un constructor de páginas como Elementor o Divi.
Método 1: Desde el archivo wp-config.php
- Abre
wp-config.phpcon un editor de texto. - Justo antes de la línea que dice
/* That's all, stop editing! */, añade esta línea:
define('WP_MEMORY_LIMIT', '256M');
- Guarda y sube el archivo.
Método 2: Desde el archivo php.ini
Si el método anterior no funciona, puedes crear o editar un archivo php.ini en la raíz de tu WordPress:
memory_limit = 256M
max_execution_time = 300
max_input_vars = 3000
Método 3: Desde cPanel
- Ve a Seleccionar versión de PHP (o MultiPHP Manager).
- Busca la pestaña Opciones.
- Cambia
memory_limita256Mo512M. - Guarda los cambios.
Método 4: Desde Plesk
- Ve a Configuración de PHP en el panel de tu dominio.
- Busca la opción
memory_limit. - Auméntala a
256My guarda.
[WARNING] No subas la memoria por encima de 512M en un hosting compartido. El servidor puede rechazar el cambio o tu cuenta podría ser suspendida por abuso de recursos.
Solución 4: Corrige los permisos de archivos y carpetas
Los permisos incorrectos son otra causa frecuente del error 500 Plesk y cPanel. Los permisos correctos son:
- Archivos: 644
- Carpetas: 755
- wp-config.php: 600 o 640 (nunca 777)
Cómo corregir permisos en cPanel:
- Ve al Administrador de archivos.
- Selecciona todos los archivos y carpetas de
public_html. - Haz clic en Permisos en la barra superior.
- Introduce
755para carpetas y644para archivos. - Marca la casilla "Cambiar archivos y subdirectorios" o "Recursivo".
Cómo corregir permisos en Plesk:
- Ve a Administrador de archivos en tu dominio.
- Entra en
httpdocs. - Selecciona todos los archivos y carpetas.
- Usa la opción Cambiar permisos.
- Pon
755para directorios y644para archivos.
Alternativa por SSH (si tienes acceso):
find /ruta/a/tu/wordpress -type d -exec chmod 755 {} \;
find /ruta/a/tu/wordpress -type f -exec chmod 644 {} \;
chmod 600 wp-config.php
[WARNING] Nunca uses permisos 777 en archivos de WordPress. Es un riesgo de seguridad grave y muchos servidores lo bloquean automáticamente.
Solución 5: Cambia la versión de PHP
WordPress funciona mejor con versiones recientes de PHP. Si tu sitio usa PHP 5.6 o 7.0, es muy probable que encuentres errores 500 al instalar plugins modernos.
Cambiar versión de PHP en cPanel:
- Busca MultiPHP Manager o Seleccionar versión de PHP.
- Selecciona tu dominio.
- Elige una versión PHP 8.0, 8.1 o 8.2.
- Pulsa Aplicar.
Cambiar versión de PHP en Plesk:
- Ve a Configuración de PHP en tu dominio.
- En la pestaña Versión de PHP, selecciona una versión reciente.
- Guarda los cambios.
[TIP] Si al cambiar a PHP 8.x tu web muestra errores de compatibilidad, prueba con PHP 7.4, que sigue siendo muy estable y compatible con la mayoría de plugins.
Solución 6: Restaura los archivos core de WordPress
Si nada de lo anterior funciona, puede que algunos archivos del núcleo de WordPress estén dañados.
Método manual:
- Descarga la última versión de WordPress desde wordpress.org (en español, es.wordpress.org).
- Descomprime el ZIP en tu ordenador.
- Conéctate por FTP.
- Sube las carpetas
wp-adminywp-includesreemplazando las existentes. - En la carpeta raíz, reemplaza los archivos
index.php,wp-blog-header.php,wp-load.php,wp-settings.phpyxmlrpc.php. - NO reemplaces
wp-config.phpni la carpetawp-content(ahí están tus plugins, temas y subidas).
Método desde el panel de administración:
WordPress tiene una función de actualización automática que puede reparar archivos:
- Ve a Escritorio → Actualizaciones.
- Pulsa Volver a instalar ahora.
- WordPress descargará e instalará los archivos core de nuevo sin tocar tu contenido.
Solución 7: Revisa el registro de errores del servidor
Si has llegado hasta aquí y sigues sin solucionar error 500, es hora de mirar los logs del servidor.
Desde cPanel:
- Ve a Métricas → Errores.
- Busca la sección de errores recientes.
- Filtra por tu dominio y busca entradas con "500" o "PHP Fatal error".
Desde Plesk:
- Ve a Sitios web y dominios.
- Haz clic en Registros (o Logs).
- Descarga el log de errores del día.
Ejemplo de lo que puedes encontrar:
[error] PHP Fatal error: Allowed memory size of 67108864 bytes exhausted
[error] PHP Fatal error: Call to undefined function wp_get_current_user()
Estos mensajes te indican exactamente qué archivo y línea están fallando.
Solución 8: Comprueba si tienes malware o código inyectado
A veces el error 500 es síntoma de que tu sitio ha sido hackeado. Si has probado todo y sigue fallando:
- Revisa si hay archivos PHP sospechosos en
wp-content/uploads/(los hackers esconden scripts ahí). - Busca en
wp-content/themes/archivos con nombres raros o con funciones codificadas en base64. - Usa un plugin como Wordfence o Sucuri (instalándolo temporalmente) para escanear tu sitio.
[WARNING] Si encuentras archivos sospechosos, no los edites: elimínalos directamente y cambia todas tus contraseñas (wp-admin, FTP, base de datos).
Solución 9: Contacta con tu proveedor de hosting
Si después de seguir todos los pasos anteriores el error 500 WordPress persiste, es momento de escalar el problema. Los servidores tienen configuraciones internas (como mod_security o reglas de recursos) que no puedes modificar tú.
Qué decirle a tu soporte:
- Indica que ya has desactivado plugins, restaurado
.htaccessy aumentado la memoria PHP. - Pide que revisen el log de errores del servidor (no el de WordPress, sino el de Apache/Nginx).
- Pregunta si hay algún bloqueo de
mod_securityactivo. - Si tienes el log de
debug.log, adjúntalo.
Preguntas frecuentes (FAQ)
¿Puedo perder mis datos si intento solucionar el error 500?
No. Ninguno de los pasos de esta guía elimina contenido de tu base de datos ni tus archivos subidos. Como mucho, desactivas plugins temporalmente (que se reactivan después).
¿El error 500 es lo mismo que el error 502 o 503?
No. El error 500 es un fallo interno del servidor. El 502 indica una mala conexión con un servidor proxy, y el 503 significa que el servidor está sobrecargado o en mantenimiento. Cada uno tiene soluciones diferentes.
¿Puedo prevenir el error 500 en el futuro?
Sí, con estos hábitos:
- Mantén WordPress, temas y plugins siempre actualizados.
- No instales demasiados plugins (menos es más).
- Usa un plugin de caché como W3 Total Cache o WP Rocket.
- Haz copias de seguridad semanales (puedes usar UpdraftPlus).
- Revisa los logs de tu hosting una vez al mes.
¿Qué hago si el error 500 aparece solo en el panel de administración?
Eso indica que el problema está en un plugin o tema que se carga solo en wp-admin. Desactiva todos los plugins por FTP (como explicamos en la Solución 1) y ve activándolos de uno en uno.
¿El error 500 tiene algo que ver con mi conexión a internet?
No. Es un problema del lado del servidor. Si tu conexión fallara, verías un error de "No se puede acceder al sitio" en el navegador, no un código 500.
Resumen rápido: Checklist de emergencia
Si estás con el tiempo justo, sigue este orden:
- Recarga la página (a veces es temporal).
- Desactiva todos los plugins renombrando la carpeta
pluginsaplugins_desactivados. - Renombra el
.htaccessahtaccess_antiguo.txt. - Aumenta la memoria PHP a
256Menwp-config.php. - Cambia la versión de PHP a 8.1 o 8.2.
- Revisa los permisos
