Cómo solucionar 'Internal Server Error 500' en WordPress (DirectAdmin)
¡Vaya! Que aparezca un error 500 en WordPress es de las cosas más frustrantes que te pueden pasar. Ves la pantalla en blanco, o un mensaje genérico de "Internal Server Error", y piensas que has perdido todo tu trabajo. Pero tranquilo, respira. Este error es mucho más común de lo que crees y, en la gran mayoría de los casos, tiene una solución sencilla que puedes aplicar tú mismo, incluso si no eres un experto en tecnología.
En esta guía extensa y paso a paso, te voy a enseñar a solucionar el error 500 en un entorno de hosting con panel de control DirectAdmin. Olvídate del pánico, vamos a ir por partes, con un método claro y didáctico para que recuperes tu sitio web lo antes posible.
¿Qué es exactamente el Error 500 y por qué ocurre?
Antes de ponernos manos a la obra, es importante que entiendas qué está pasando. El Internal Server Error (o error 500) es un mensaje genérico que envía el servidor cuando algo ha fallado internamente, pero no puede dar un motivo específico. Es como si el servidor dijera: "He intentado cargar tu página, pero algo ha salido mal y no sé explicarte bien el qué".
En el contexto de WordPress, las causas más frecuentes suelen ser:
- Un archivo
.htaccesscorrupto o con reglas incorrectas. Este archivo es como el "director de orquesta" de tu servidor web (Apache o LiteSpeed). Si tiene una instrucción errónea, todo el sitio puede fallar. - Un plugin o tema con errores de código. A veces, al actualizar o instalar un plugin, este puede tener conflictos con otros o con el núcleo de WordPress, provocando un fallo fatal.
- Límite de memoria PHP agotado. Si tu sitio necesita más memoria de la que el servidor le permite usar, se detiene y muestra el error.
- Permisos de archivos incorrectos. Los archivos y carpetas de tu hosting tienen "permisos" que dicen quién puede leer, escribir o ejecutarlos. Si estos están mal configurados, el servidor no puede acceder a ellos.
- Problemas con el servidor en sí. Aunque es menos común, el servidor puede tener un problema temporal de configuración o de recursos.
Ahora que sabemos los sospechosos habituales, vamos a investigar y a aplicar soluciones. Te recomiendo seguir este orden, ya que va de lo más simple a lo más complejo.
Fase 1: Las Soluciones Rápidas y Sin Riesgo
Estos son los primeros pasos que debes probar. Son seguros y no modificarán nada crítico en tu sitio.
1. Recargar la Página y Limpiar la Caché del Navegador
A veces, el error 500 es un simple fallo intermitente del servidor o un problema de caché guardada en tu navegador.
- Acción: Pulsa
F5oCtrl + Rpara recargar la página. Si no funciona, prueba a abrir tu sitio en una ventana de incógnito o privado de tu navegador (Chrome, Firefox, etc.). - Detalle extra: Si tienes un plugin de caché (como WP Rocket o W3 Total Cache), es posible que el error se deba a una versión antigua de la caché. Si puedes acceder al panel de administración de WordPress (
tudominio.com/wp-admin), ve a la configuración del plugin y purga la caché. A veces, esto es suficiente.
2. Desactivar Temporalmente Todos los Plugins (Método Manual por FTP)
Si la caché no era el problema, el siguiente paso es comprobar si un plugin está causando el conflicto. No puedes hacerlo desde el panel de WordPress si el error te impide entrar, así que lo haremos manualmente.
Necesitarás un cliente FTP (como FileZilla) o el Administrador de Archivos de DirectAdmin. Si no sabes qué es FTP, no te preocupes, es solo una forma de conectarte a los archivos de tu web.
- Paso 1: Accede a tu panel de DirectAdmin. Verás una sección llamada "Administrador de archivos" o "File Manager". Haz clic en ella.
- Paso 2: Navega hasta la carpeta
public_html(odomains/tudominio.com/public_html). Ahí es donde vive tu WordPress. - Paso 3: Busca la carpeta
wp-content. Dentro de ella, verás una carpeta llamadaplugins. - Paso 4: Esta es la clave. Renombra la carpeta
pluginsaplugins_desactivados. Haz clic derecho sobre la carpeta y elige la opción "Renombrar". - Paso 5: Espera unos segundos y vuelve a intentar acceder a tu web.
[TIP] Este método es como "desenchufar" todos los plugins a la vez. WordPress, al no encontrar la carpeta plugins, los ignora por completo.
-
¿Funcionó? Si tu sitio ya carga, entonces el problema es uno de tus plugins. Ahora tienes que averiguar cuál. Crea una nueva carpeta llamada
plugins(vacía). Luego, dentro de tu gestor de archivos, entra enplugins_desactivadosy mueve los plugins de vuelta apluginsuno por uno, comprobando tu web después de cada movimiento. Cuando el error vuelva a aparecer, ¡habrás encontrado al culpable! Elimínalo o sustitúyelo por una alternativa. -
¿No funcionó? Si el error persiste, renombra la carpeta de vuelta a
pluginspara no perder la configuración y continúa con el siguiente paso.
Fase 2: Investigación y Reparación de Archivos Clave
Si los plugins no eran el problema, vamos a mirar los archivos de configuración más importantes.
3. Restablecer el Archivo .htaccess
El archivo .htaccess es un archivo de configuración oculto. Si está dañado, es una causa muy común del DirectAdmin error 500.
- Paso 1: En el Administrador de archivos de DirectAdmin, asegúrate de tener activada la opción "Mostrar archivos ocultos" (suele ser un botón o una casilla en la parte superior).
- Paso 2: Busca el archivo
.htaccessen tu carpetapublic_html. - Paso 3: Renómbralo a
.htaccess_viejo. Esto lo desactiva sin borrarlo, por si acaso. - Paso 4: Intenta acceder a tu web.
[INFO] Si tu web funciona, entonces el .htaccess era el problema. No te preocupes, WordPress creará uno nuevo automáticamente. Ve a Ajustes > Enlaces permanentes en tu panel de administración y haz clic en "Guardar cambios". Esto regenerará un archivo .htaccess limpio y funcional.
- ¿No funcionó? Renombra el archivo de vuelta a
.htaccessy sigue leyendo.
4. Aumentar el Límite de Memoria PHP
A veces, el error 500 se debe a que WordPress se queda sin memoria. Podemos intentar aumentar este límite desde el archivo wp-config.php.
- Paso 1: En el Administrador de archivos, busca el archivo
wp-config.phpen la raíz de tu WordPress (dentro depublic_html). - Paso 2: Haz clic derecho sobre él y selecciona "Editar" o "Code Editor".
- Paso 3: Busca la línea que dice
¡Eso es todo, deja de editar! Feliz blogging.(o en inglés,That's all, stop editing! Happy blogging.). - Paso 4: Justo antes de esa línea, pega el siguiente código:
define('WP_MEMORY_LIMIT', '256M');
- Paso 5: Guarda los cambios y comprueba tu web.
[WARNING] Este cambio le dice a WordPress que puede usar hasta 256 megas de memoria. Si tu plan de hosting tiene menos, podría no funcionar. Si no funciona, puedes probar con 128M.
Fase 3: Soluciones Avanzadas (Pero Aún Hacenibles)
Si llegados a este punto el error 500 WordPress continúa, vamos a revisar la configuración del servidor y los permisos.
5. Verificar los Permisos de Archivos y Carpetas
Los permisos incorrectos son otra causa frecuente. En un hosting estándar, las carpetas deben tener permisos 755 y los archivos 644.
- Paso 1: En el Administrador de archivos de DirectAdmin, selecciona todos los archivos y carpetas de tu
public_html. - Paso 2: Busca un botón que diga "Cambiar permisos" o "Permissions". Si no lo ves, puede que tengas que hacerlo desde un cliente FTP.
- Paso 3: Asegúrate de que las carpetas tengan
755y los archivos tengan644.
[INFO] No te obsesiones con hacer esto archivo por archivo. Generalmente, seleccionar todo y aplicar 755 a carpetas y 644 a archivos es suficiente. En FileZilla, puedes hacer clic derecho en una carpeta, ir a "Permisos de archivos" y marcar la casilla "Recursivo en subcarpetas" para aplicarlo a todo.
6. Comprobar la Configuración de PHP (Versión y Handler)
A veces, el problema no es tu WordPress, sino cómo el servidor ejecuta PHP. Un plugin o tema puede no ser compatible con la versión de PHP que tienes activada.
- Paso 1: Entra en tu panel de DirectAdmin.
- Paso 2: Busca una sección llamada "Administrador de PHP" o "Configuración de PHP". En DirectAdmin, suele estar en la parte de "Cuenta" o "Configuración avanzada".
- Paso 3: Ahí podrás ver la versión de PHP actual. Si no es la más reciente (como 8.1 o 8.2), prueba a cambiarla a una versión más nueva. A veces, cambiar de PHP 7.4 a 8.1 puede solucionar conflictos de compatibilidad.
[WARNING] Antes de cambiar la versión de PHP, asegúrate de que tu WordPress y tus plugins son compatibles. Si no estás seguro, esta opción podría causar otros problemas. Sin embargo, es una solución muy común para el error 500.
Fase 4: Cuando Todo lo Demás Falla
Si has llegado hasta aquí y aún tienes el internal server error wordpress, es hora de mirar los registros del servidor. Estos son como la "caja negra" de tu web y te dirán exactamente qué está fallando.
7. Revisar los Registros de Errores (Error Logs)
En DirectAdmin, los registros de errores suelen estar en una carpeta llamada logs o error_logs.
- Paso 1: En el Administrador de archivos, navega a la carpeta
domains/tudominio.com/logs/. También puede estar directamente enpublic_htmlcomo un archivo llamadoerror_log. - Paso 2: Abre el archivo más reciente. Busca las líneas que coincidan con la fecha y hora en que empezó el error.
- Paso 3: Lee el mensaje. No te asustes por el lenguaje técnico. Busca palabras clave como "PHP Fatal error", "Allowed memory size", "Parse error" o el nombre de un plugin o tema específico.
[TIP] Si encuentras algo como PHP Fatal error: Call to undefined function seguido de un nombre de plugin, sabrás exactamente qué archivo está causando el problema. Si ves Allowed memory size of X bytes exhausted, significa que el problema es la memoria y deberías revisar el paso 4 de nuevo.
8. Contactar con el Soporte de tu Hosting
Si los logs no te dan una pista clara, o si el problema parece ser del servidor (y no de tu sitio), es el momento de pedir ayuda profesional.
- Explica claramente: Diles que tienes un error 500 en WordPress y que ya has probado a desactivar plugins, restablecer el
.htaccessy aumentar la memoria PHP. - Proporciona los logs: Si has encontrado algo en los registros de errores, cópialo y envíalo al soporte. Esto les ayudará a diagnosticar el problema mucho más rápido.
Preguntas Frecuentes (FAQ) sobre el Error 500
Para terminar, aquí tienes algunas de las preguntas más comunes que recibimos sobre este tema.
¿Perderé mis datos si se produce un error 500?
No. El error 500 es un problema de ejecución del servidor, no de almacenamiento. Tus entradas, páginas, imágenes y comentarios siguen intactos en la base de datos. Es un problema temporal que impide que el servidor "compile" tu página, pero no borra nada.
¿Es lo mismo un error 500 que un error 404?
No, son completamente diferentes. El error 404 significa que la página que buscas no existe (la URL está mal o se ha movido). El error 500 significa que la página existe, pero el servidor ha tenido un fallo interno al intentar cargarla.
¿Qué hago si el error 500 aparece solo en una página específica?
Si el error solo ocurre en una página, el problema no es global. Suele estar relacionado con un plugin que se usa en esa página en particular, o con un conflicto de código en esa entrada. Intenta editar esa página desde el panel de administración (si puedes acceder) y revisa los bloques o shortcodes que contiene.
¿Puede un ataque de hackers causar un error 500?
Sí, es posible. Un sitio comprometido puede tener archivos corruptos o código malicioso que provoque un fallo en el servidor. Si sospechas de esto, además de solucionar el error, deberías cambiar todas tus contraseñas (hosting, FTP, WordPress) y escanear tu sitio en busca de malware.
¿Cuánto tiempo se tarda en solucionar un error 500?
Depende de la causa. Si es un simple problema de caché o un .htaccess corrupto, puede llevar menos de 5 minutos. Si es un conflicto de plugins complejo, puede llevarte una hora o más. Lo bueno es que, siguiendo esta guía, la mayoría de los casos se resuelven en menos de 30 minutos.
[INFO] Recuerda que si tu hosting utiliza Syspanel (también conocido como HestiaCP), el proceso de acceso a los archivos es muy similar. Simplemente inicia sesión en tu panel de control a través del puerto 2106 y busca el "Administrador de archivos". El resto de los pasos (renombrar plugins, editar wp-config.php, etc.) son idénticos.
Espero que esta guía extensa te haya sido de gran ayuda y que hayas podido solucionar el error 500 en tu WordPress. Como siempre, la clave está en la paciencia y en ir descartando posibilidades una a una. ¡Mucha suerte con tu sitio web!
