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

Cómo arreglar el error 500 Internal Server Error en WordPress (hosting compartido)

Actualizado el 9 de diciembre de 2025

¡Vaya, qué susto! Estás navegando tranquilamente por tu web, o quizás intentando entrar al panel de administración de WordPress, y de repente aparece una pantalla en blanco con un mensaje críptico: "500 Internal Server Error". No te preocupes, no eres el primero al que le pasa y, sobre todo, tiene solución.

Este error es uno de los más comunes en el mundo del hosting, especialmente en los planes compartidos donde los recursos del servidor se reparten entre varios usuarios. La buena noticia es que, en la gran mayoría de los casos, no se ha perdido nada de tu contenido y puedes arreglarlo tú mismo sin necesidad de ser un experto en programación.

En esta guía extensa y detallada, vamos a desglosar paso a paso, y en un lenguaje muy sencillo, cómo diagnosticar y arreglar el error 500 en WordPress cuando tu sitio está alojado en un hosting compartido. Da igual si tu panel de control es cPanel, Plesk o incluso Syspanel (antes conocido como HestiaCP); los pasos lógicos son prácticamente los mismos.

Vamos a ello. Respira hondo, coge un café y sigue esta ruta de solución. Te prometo que es más fácil de lo que parece.


¿Qué significa exactamente el "Error 500 Internal Server Error"?

Antes de ponernos manos a la obra, es crucial entender qué está pasando. Cuando ves el wordpress internal server error, significa que el servidor donde está alojada tu web ha encontrado un problema inesperado y no ha podido completar tu solicitud. Es un error genérico que no te dice exactamente qué ha fallado, pero sí te indica que el problema está en la configuración del servidor, en un archivo corrupto o en un conflicto entre plugins o temas.

En un entorno de hosting compartido, las causas más frecuentes suelen ser:

  1. Un archivo .htaccess corrupto o con reglas incorrectas.
  2. Un plugin o tema con un error de programación (el clásico "conflicto").
  3. Permisos de archivos y carpetas incorrectos (muy común al migrar webs).
  4. Límite de memoria de PHP agotado (memory limit).
  5. Errores de sintaxis en el archivo wp-config.php.

Vamos a atacar cada una de estas causas en orden de probabilidad y facilidad. No necesitas ser un hacker para hacer esto, solo seguir las instrucciones al pie de la letra.


Paso 1: La Primera Línea de Defensa (y la más fácil)

A veces, la solución es mucho más simple de lo que pensamos. Antes de tocar archivos técnicos, prueba estas dos opciones rápidas.

### Borrar la caché del navegador y del servidor

A veces, el error 500 no es un problema real del servidor, sino una caché corrupta que se ha guardado en tu navegador o en el sistema de caché de tu hosting (como LiteSpeed Cache o Varnish).

  1. En tu navegador: Pulsa Ctrl + F5 (o Cmd + Shift + R en Mac) para forzar una recarga ignorando la caché.
  2. En tu hosting: Si tienes acceso a un plugin de caché (como WP Rocket o W3 Total Cache) pero no puedes entrar al panel de WordPress, no te preocupes. Muchos paneles de control como cPanel o Plesk tienen una opción para "Limpiar caché" directamente desde el administrador de archivos o desde la sección de "Métricas" o "Rendimiento". Busca un botón que diga "Purge Cache" o "Limpiar caché".

[TIP] Si después de limpiar la caché del navegador el error persiste, pasa al siguiente paso. No pierdas demasiado tiempo aquí.


Paso 2: Inspeccionar y Reparar el Archivo .htaccess

Este es el culpable número uno en el 80% de los casos. El archivo .htaccess es un archivo de configuración oculto que controla cómo se comporta tu servidor web (Apache o LiteSpeed) con tu sitio. Si se corrompe, el servidor no sabe cómo manejar las solicitudes y devuelve el temido error 500.

Para arreglar el error 500 en cPanel o Plesk, vamos a hacer una copia de seguridad y crear uno nuevo.

### Con cPanel

  1. Entra en tu panel de control de cPanel.
  2. Busca la sección "Archivos" y haz clic en "Administrador de archivos".
  3. Navega hasta la carpeta public_html (o la carpeta raíz donde esté instalado WordPress). Normalmente es public_html o una subcarpeta si tienes la web en un subdominio.
  4. Asegúrate de tener activada la opción "Mostrar archivos ocultos" (suele ser un botón en la esquina superior derecha).
  5. Busca el archivo llamado .htaccess. Haz clic derecho sobre él y selecciona "Editar". Si te pide confirmación, acéptala.
  6. Corta todo el contenido que haya dentro y pégalo en un bloc de notas para guardarlo como copia de seguridad.
  7. Ahora, en el archivo, pega este 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
  1. Guarda el archivo y vuelve a intentar cargar tu web.

### Con Plesk

El proceso es similar pero la interfaz cambia un poco.

  1. Entra en Plesk y ve a "Administrador de archivos" (File Manager).
  2. Navega a la carpeta httpdocs (que es el equivalente a public_html en Plesk).
  3. Haz clic en el icono de configuración (la rueda dentada) para asegurarte de que "Mostrar archivos ocultos" está activado.
  4. Busca el archivo .htaccess.
  5. Haz clic en el icono de lápiz para "Editar en el editor de texto".
  6. Repite los pasos del 6 al 8 de la sección anterior.

[INFO] Si al guardar el archivo .htaccess te da un error de permisos, no te preocupes, lo solucionaremos en el Paso 4.

Si después de reemplazar el .htaccess el error persiste, sigue leyendo. El problema no era ese.


Paso 3: Desactivar Plugins y Temas (El Sospechoso Habitual)

La causa más común de un error 500 wordpress es un plugin o tema que ha lanzado una excepción fatal de PHP. Como no puedes entrar al panel de administración de WordPress (el famoso /wp-admin), tendrás que hacerlo por la vía rápida: renombrando las carpetas.

### Desactivar todos los plugins

Vamos a aislar el problema. Si desactivamos todos los plugins y la web funciona, entonces el problema es uno de ellos.

  1. Accede a tu panel de control (cPanel, Plesk o Syspanel).
  2. Entra al Administrador de archivos.
  3. Ve a la carpeta raíz de tu WordPress (la misma donde está el .htaccess).
  4. Busca la carpeta llamada wp-content.
  5. Dentro de wp-content, busca la carpeta llamada plugins.
  6. Haz clic derecho sobre la carpeta plugins y selecciona "Renombrar".
  7. Cámbiale el nombre a algo como plugins_desactivados (o cualquier nombre que recuerdes).
  8. Espera unos segundos y vuelve a intentar cargar tu web.

Si la web carga correctamente (aunque sin plugins, se verá rara pero cargará), entonces el problema es un plugin. Ahora, para encontrar cuál es:

  1. Renombra la carpeta de nuevo a plugins.
  2. Ahora, entra dentro de plugins y ve renombrando los plugins uno a uno. Por ejemplo, renombra plugin1 a plugin1_temp.
  3. Después de renombrar uno, recarga tu web. Si ya no da error, ¡ese es el culpable! Elimínalo o busca una actualización.
  4. Repite hasta encontrar al culpable, o si quieres acelerar el proceso, desactiva la mitad de los plugins de golpe para descartar rápidamente.

### Cambiar al tema por defecto

Si el problema no son los plugins, puede ser tu tema. WordPress viene con temas por defecto (como Twenty Twenty-Four).

  1. En el Administrador de archivos, ve a wp-content -> themes.
  2. Verás las carpetas de tus temas instalados.
  3. Renombra la carpeta del tema que estás usando actualmente (la que tienes activa) a algo como tema_activo_desactivado.
  4. WordPress, al no encontrar el tema activo, automáticamente usará uno por defecto que esté instalado.

Si la web carga, el problema es tu tema. Puedes intentar actualizarlo o contactar al desarrollador del tema para reportar el error.

[WARNING] No borres las carpetas de los plugins o temas. Solo renómbralas. Así es más fácil revertir el cambio si no era el problema.


Paso 4: Verificar los Permisos de Archivos y Carpetas

Esta es una causa muy común, sobre todo si has movido la web de un servidor a otro o has restaurado una copia de seguridad manualmente. Si los permisos son demasiado estrictos, el servidor no puede leer los archivos. Si son demasiado permisivos, es un riesgo de seguridad.

Los permisos correctos para WordPress son:

  • Carpetas (Directorios): 755 (rwxr-xr-x)
  • Archivos: 644 (rw-r--r--)

### Cómo cambiarlos en cPanel

  1. Entra al Administrador de archivos.
  2. Selecciona todos los archivos y carpetas de la raíz de tu WordPress (pulsa Ctrl + A).
  3. Haz clic en el botón "Permisos" en la barra superior.
  4. En la ventana emergente, verás un campo numérico. Escribe 755 y asegúrate de marcar la casilla "Cambiar los archivos y carpetas de forma recursiva".
  5. Haz clic en "Guardar".
  6. Esto cambiará todo a 755. Ahora necesitamos cambiar los archivos a 644. Haz clic en "Seleccionar todo" de nuevo.
  7. Ahora, en la parte superior, busca un botón que diga "Seleccionar archivos" o similar (para seleccionar solo archivos, no carpetas). Si no lo encuentras, es más tedioso, pero puedes hacerlo carpeta por carpeta, o simplemente dejar todo en 755 que funciona en la mayoría de los casos. Para ser más precisos, si tienes la opción de filtrar por tipo de archivo, hazlo y selecciona solo archivos.
  8. Cambia los permisos de los archivos a 644 de forma recursiva.

### Cómo cambiarlos en Plesk

  1. Entra al Administrador de archivos.
  2. Navega a la raíz de tu WordPress.
  3. Selecciona todos los archivos y carpetas.
  4. Haz clic en el botón "Permisos" en la barra de herramientas.
  5. Plesk te mostrará una interfaz con casillas. Marca la opción "Aplicar a todos los archivos y subdirectorios".
  6. Para las carpetas, asegúrate de que estén marcadas las casillas de Lectura, Escritura y Ejecución para el propietario, y solo Lectura y Ejecución para el grupo y otros. Es decir, 755.
  7. Para los archivos, busca una opción para "Aplicar a archivos" y configura 644 (Lectura y Escritura para propietario, y solo Lectura para grupo y otros).
  8. Guarda los cambios.

[TIP] En Syspanel (HestiaCP), el acceso es por el puerto 2106 (https://tu-dominio:2106). Una vez dentro, el Administrador de archivos está en la sección de "Archivos" y el proceso de permisos es muy similar al de cPanel. Busca la opción de "Permisos" tras seleccionar los archivos.


Paso 5: Aumentar el Límite de Memoria PHP

Si tu web está creciendo o un plugin consume muchos recursos, es posible que el límite de memoria de PHP sea insuficiente, lo que provoca el error 500. Aumentar este límite es bastante sencillo.

### Editar el archivo wp-config.php

  1. Ve al Administrador de archivos de tu hosting.
  2. Busca el archivo wp-config.php en la raíz de tu WordPress.
  3. Haz clic derecho y selecciona "Editar".
  4. Busca la línea que dice ¡Eso es todo, deja de editar! (o That's all, stop editing!).
  5. Justo antes de esa línea, pega la siguiente línea de código:
define('WP_MEMORY_LIMIT', '256M');
  1. Guarda el archivo y recarga tu web.

### Desde el panel de control (cPanel)

En cPanel, a veces puedes cambiar el límite de memoria desde la sección de "Seleccionar versión de PHP" (o "MultiPHP Manager").

  1. Busca la opción "Seleccionar versión de PHP" en cPanel.
  2. Haz clic en el icono de "Opciones de PHP" (o "Switch to PHP Options").
  3. Busca la directiva memory_limit.
  4. Cambia el valor de 256M a 512M o incluso 768M si el hosting te lo permite.
  5. Haz clic en "Guardar".

[INFO] En Plesk, esta opción suele estar en "Configuración de PHP" dentro de la sección de tu dominio. Busca la pestaña de "Opciones de PHP" y modifica el memory_limit de la misma manera.


Paso 6: Revisar los Logs de Errores (La Pista Definitiva)

Si has llegado hasta aquí y el error persiste, necesitas ver el registro de errores del servidor. Ahí estará el mensaje exacto del problema. Es como la caja negra de un avión.

### Dónde encontrar los logs

  • En cPanel: Busca la sección "Métricas" y haz clic en "Errores" o "Registros de errores". A veces se llama "Logs de errores" o "Latest Visitors".
  • En Plesk: Ve a la pestaña de tu dominio y busca la sección "Logs". Ahí encontrarás los archivos de log de acceso y de error.
  • En Syspanel (HestiaCP): Accede por el puerto 2106 y busca la sección de "Registros" o "Logs". Suelen estar en /var/log/apache2/ o /var/log/nginx/, pero el panel te da una interfaz amigable para verlos.

### Cómo leer el log de errores

Busca las líneas que contengan la fecha y hora en que ocurrió el error. Los mensajes típicos que verás son:

  • PHP Fatal error: Allowed memory size of ... bytes exhausted -> Confirma el problema del límite de memoria.
  • PHP Fatal error: Call to undefined function ... -> Indica que un plugin o tema está intentando usar una función que no existe (conflicto de versiones).
  • End of script output before headers -> Suele estar relacionado con el .htaccess o con un plugin que hace redirecciones.

Con este mensaje, podrás buscar en Google el texto exacto del error para encontrar una solución más específica.


Paso 7: La Última Opción: Restaurar una Copia de Seguridad

Si has intentado todo lo anterior y nada funciona, no desesperes. La solución definitiva es restaurar tu web desde una copia de seguridad reciente.

  • Desde el hosting: La mayoría de los hosts compartidos (cPanel, Plesk)

¿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