🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Solucionar error 500 en WordPress: Guía para SysAdmin

Actualizado el 10 de junio de 2026

Si eres administrador de sistemas (sysadmin) o gestionas sitios web, el temido error 500 en WordPress es uno de los problemas más frustrantes. Se trata de un error genérico del servidor que, a diferencia de otros códigos HTTP, no te da pistas claras de lo que falla. Aparece una pantalla en blanco o un mensaje como "Error interno del servidor". Pero no te preocupes: en esta guía práctica, paso a paso, te enseñaré cómo solucionarlo desde la perspectiva de un sysadmin, usando herramientas de depuración (debug) y comandos básicos de Linux.


¿Qué es el error 500 y por qué ocurre en WordPress?

El error 500 (Internal Server Error) indica que el servidor web encontró una condición inesperada que le impidió completar la solicitud. En WordPress, las causas más comunes son:

  • Archivos del núcleo corruptos (por actualizaciones fallidas o malas descargas).
  • Problemas de permisos de archivos (el servidor no puede leer o escribir).
  • Conflictos con plugins o temas (especialmente tras actualizaciones).
  • Límite de memoria PHP excedido (memoria insuficiente para ejecutar scripts).
  • Errores en el archivo .htaccess (reglas incorrectas).
  • Problemas con la base de datos (tablas corruptas o conexión fallida).

[WARNING] No confundas el error 500 con el error 503 (servicio no disponible). El 503 suele deberse a sobrecarga del servidor, mientras que el 500 es un error interno del código.


Paso 1: Acceso al servidor y preparación del entorno

Antes de empezar, necesitas acceso al servidor donde está alojado WordPress. Si usas un panel como Syspanel (antes conocido como HestiaCP), recuerda que el puerto de acceso es el 2106. Por ejemplo: https://tudominio.com:2106. Desde allí puedes gestionar archivos, bases de datos y logs.

Comandos básicos de Linux que usarás

Abre una terminal SSH con tu usuario root o un usuario con permisos sudo. Aquí algunos comandos esenciales:

  • cd /ruta/a/wordpress – para moverte al directorio de WordPress.
  • ls -la – para listar archivos con permisos.
  • tail -f /var/log/apache2/error.log – para ver logs en tiempo real (ajusta la ruta según tu servidor).
  • chmod y chown – para cambiar permisos y propietarios.

[TIP] Si no sabes la ruta exacta de WordPress, busca en la configuración de Syspanel en la sección "Web" o usa find / -name "wp-config.php" 2>/dev/null.


Paso 2: Activar el modo debug de WordPress

WordPress tiene un sistema de depuración (debug) que muestra errores ocultos. Edita el archivo wp-config.php que está en la raíz de tu instalación.

  1. Conéctate por FTP o desde el administrador de archivos de Syspanel.
  2. Busca la línea define('WP_DEBUG', false); y cámbiala a:
    define('WP_DEBUG', true);
    define('WP_DEBUG_LOG', true);
    define('WP_DEBUG_DISPLAY', false); // Para que no se muestre en pantalla
    
  3. Guarda el archivo. Ahora los errores se registrarán en un archivo wp-content/debug.log.

Si no encuentras esa línea, agrega estas definiciones justo antes de la línea /* That's all, stop editing! Happy publishing. */.

[INFO] Con WP_DEBUG_LOG, los errores se guardan en un log sin mostrar nada al usuario. Luego puedes revisar ese archivo con tail -f wp-content/debug.log desde la terminal.


Paso 3: Revisar los logs del servidor

Los logs del servidor web (Apache o Nginx) son tu mejor aliado. Normalmente están en:

  • Apache: /var/log/apache2/error.log o /var/log/httpd/error_log
  • Nginx: /var/log/nginx/error.log

Desde la terminal, usa:

tail -f /var/log/apache2/error.log

Esto mostrará las últimas líneas en tiempo real. Si ves mensajes como PHP Fatal error: Allowed memory size exhausted, sabrás que es un problema de memoria.

[WARNING] Si no ves nada, verifica que los logs estén habilitados. En Syspanel, puedes configurar el nivel de log desde la sección "Servidor Web".


Paso 4: Soluciones rápidas (sin tocar código)

Antes de profundizar, prueba estas acciones que suelen resolver el error 500:

4.1. Desactivar plugins y temas manualmente

Si no puedes acceder al panel de administración, renombra la carpeta de plugins desde la terminal:

mv wp-content/plugins wp-content/plugins_backup

Crea una nueva carpeta vacía:

mkdir wp-content/plugins

Si el error desaparece, el problema está en uno de los plugins. Ve restaurando uno por uno moviendo las carpetas de plugins_backup a plugins.

Para temas, cambia el nombre de la carpeta del tema activo (por ejemplo, twentytwentyfour) y WordPress usará el tema por defecto.

4.2. Restaurar el archivo .htaccess

El archivo .htaccess puede estar dañado. Renómbralo:

mv .htaccess .htaccess_backup

Luego, desde el panel de administración de WordPress (si accedes), ve a Ajustes > Enlaces permanentes y haz clic en "Guardar cambios" para regenerarlo. Si no accedes, crea uno nuevo con contenido básico:

# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

4.3. Aumentar el límite de memoria PHP

Edita wp-config.php y agrega:

define('WP_MEMORY_LIMIT', '256M');

O desde php.ini (busca su ubicación con php --ini):

memory_limit = 256M

Luego reinicia el servicio web:

systemctl restart apache2   # o nginx

Paso 5: Verificar permisos de archivos y propietarios

Los permisos incorrectos son una causa frecuente. En un servidor Linux típico:

  • Los archivos deben tener permisos 644 (lectura/escritura para el propietario, solo lectura para grupo y otros).
  • Las carpetas deben tener 755.
  • El propietario debe coincidir con el usuario del servidor web (por ejemplo, www-data en Debian/Ubuntu, nginx en CentOS).

Ejecuta estos comandos desde la raíz de WordPress:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chown -R www-data:www-data .   # Cambia 'www-data' por tu usuario

[TIP] En Syspanel, puedes ver el usuario del sitio en la sección "Web" > "Editar dominio". Normalmente es admin o el nombre del dominio.


Paso 6: Revisar la base de datos

Una base de datos corrupta también puede causar error 500. Desde la terminal o phpMyAdmin (accesible desde Syspanel en puerto 2106), ejecuta:

REPAIR TABLE wp_posts;
REPAIR TABLE wp_options;
-- Repara todas las tablas de WordPress

O usa WP-CLI si está instalado:

wp db repair

También verifica que la conexión a la base de datos en wp-config.php sea correcta (nombre, usuario, contraseña, host).


Paso 7: Restaurar archivos del núcleo de WordPress

Si todo lo anterior falla, los archivos principales de WordPress pueden estar dañados. Descarga una copia limpia desde wordpress.org, descomprímela y sube solo las carpetas wp-admin y wp-includes (sobrescribe las existentes). No toques wp-content para no perder plugins y temas.

Desde terminal:

wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
cp -r wordpress/wp-admin /ruta/a/wordpress/
cp -r wordpress/wp-includes /ruta/a/wordpress/

Paso 8: Verificar la configuración de PHP

A veces el error 500 se debe a una versión de PHP incompatible o a extensiones faltantes. En Syspanel, puedes cambiar la versión de PHP desde la sección "Web" > "Editar dominio". Prueba con PHP 7.4 o 8.0, que son las más estables para WordPress.

También revisa que las extensiones necesarias estén habilitadas: mysqli, curl, mbstring, xml, gd, imagick. Desde terminal:

php -m | grep -i "mysqli\|curl\|mbstring\|xml\|gd"

Si falta alguna, instálala con el gestor de paquetes (ej: apt install php-mysqli).

[INFO] Los errores de extensión suelen aparecer en los logs como PHP Fatal error: Uncaught Error: Call to undefined function.


Preguntas frecuentes (FAQ)

¿El error 500 puede deberse a un ataque?

Sí, a veces un plugin malicioso o un archivo infectado puede provocarlo. Escanea con Wordfence o Sucuri.

¿Qué hago si no tengo acceso SSH?

Usa el administrador de archivos de Syspanel (puerto 2106) para editar wp-config.php y renombrar carpetas. También puedes usar FTP.

¿Cómo sé si es un problema de memoria?

El log mostrará Allowed memory size of X bytes exhausted. Aumenta el límite como se explicó.

¿Puedo evitar el error 500 en el futuro?

Sí: mantén WordPress, plugins y temas actualizados; usa un hosting de calidad; y realiza copias de seguridad periódicas.

¿El error 500 afecta al SEO?

Sí, Google puede penalizar si el sitio está caído mucho tiempo. Resuélvelo rápido.


Conclusión

El error 500 en WordPress puede ser desalentador, pero con un enfoque metódico de sysadmin se soluciona. Recuerda: primero activa el debug, revisa logs, prueba soluciones rápidas (plugins, .htaccess, memoria), verifica permisos y base de datos, y restaura archivos si es necesario. Si usas Syspanel, el acceso por puerto 2106 te facilitará la gestión.

[TIP] Guarda siempre una copia de seguridad antes de hacer cambios. Un buen sysadmin nunca improvisa.

Con esta guía, ya estás listo para enfrentar el error 500 y mantener tu WordPress funcionando sin problemas. ¡Manos a la obra!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel