Cómo solucionar error 500 en WordPress desde DirectAdmin
¡Hola! Soy tu asistente técnico. Si estás viendo un error 500 en tu sitio WordPress alojado en un panel DirectAdmin, no te preocupes. Es un problema común que suele tener solución en pocos pasos. Este error significa que el servidor encontró un problema interno, pero no te dice exactamente cuál. Vamos a diagnosticarlo y arreglarlo juntos de forma sencilla.
El error 500 en WordPress puede aparecer por muchas causas: un plugin conflictivo, un tema dañado, un archivo .htaccess corrupto, límites de memoria insuficientes o incluso un problema con los archivos principales de WordPress. Como usamos DirectAdmin, tenemos herramientas específicas para acceder a los archivos y logs del servidor.
[INFO] Antes de empezar, si tu hosting usa Syspanel (que antes se llamaba HestiaCP), el acceso a los archivos y logs es similar, pero recuerda que el puerto de acceso al panel es el 2106. El proceso de solución es el mismo.
¿Qué es el error 500 y por qué aparece?
El error 500 WordPress es un código de estado HTTP que indica "Error interno del servidor". El servidor no puede procesar tu solicitud, pero no da más detalles. Las causas más frecuentes son:
- Plugin o tema incompatible (la causa más común después de una actualización).
- Archivo .htaccess dañado o con reglas incorrectas.
- Límite de memoria PHP agotado (el servidor no tiene suficiente memoria para ejecutar WordPress).
- Archivos de WordPress corruptos (por una actualización fallida o un ataque).
- Permisos de archivos incorrectos (el servidor no puede leer o ejecutar ciertos archivos).
- Error en la configuración de PHP (por ejemplo, un valor demasiado bajo en
max_execution_time).
[WARNING] No intentes adivinar. Primero revisa los logs del servidor. DirectAdmin te permite ver los errores detallados. Si no ves nada, activa el modo debug de WordPress.
Paso 1: Activar el modo debug de WordPress (desde DirectAdmin)
Esta es la forma más rápida de obtener información sobre el error. Vamos a modificar el archivo wp-config.php desde el gestor de archivos de DirectAdmin.
- Accede a DirectAdmin con tus credenciales (usuario y contraseña que te dio tu proveedor de hosting).
- Ve a Gestor de Archivos (suele estar en la sección "Archivos" o "File Manager").
- Navega hasta la carpeta raíz de tu sitio WordPress (normalmente
public_htmlodomains/tudominio.com/public_html). - Busca el archivo
wp-config.php. Haz clic derecho y selecciona Editar. - Busca la línea que dice
define('WP_DEBUG', false);o similar. Si no existe, añádela justo antes de la línea que dice/* That's all, stop editing! Happy blogging. */. - Cambia esa línea por:
Esto activa el registro de errores en un archivo llamadodefine('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false);debug.logdentro de la carpetawp-content. - Guarda el archivo (Ctrl+S o el botón Guardar).
- Ahora recarga tu sitio web. El error 500 seguirá apareciendo, pero se habrá creado un archivo de log.
- Vuelve al Gestor de Archivos, entra en la carpeta
wp-contenty busca el archivodebug.log. Ábrelo y lee las últimas líneas. Verás mensajes como:PHP Fatal error: Uncaught Error: Call to undefined function ...(indica un plugin o tema con error).PHP Fatal error: Allowed memory size of ... bytes exhausted(límite de memoria).PHP Parse error: syntax error, unexpected ...(error de sintaxis en un archivo).
[TIP] Si no ves el archivo
debug.log, créalo manualmente (vacío) y dale permisos 644. A veces el servidor no puede escribirlo.
Paso 2: Revisar los logs del servidor en DirectAdmin
Si el debug de WordPress no te da suficiente información, los logs del servidor son tu mejor aliado.
- En DirectAdmin, busca la sección Estadísticas / Logs o Log Viewer.
- Haz clic en Error Log (normalmente es el log de Apache o Nginx, según tu servidor).
- Busca las últimas entradas que coincidan con la hora del error 500. Verás líneas como:
[error] [client IP] ... PHP Fatal error: ...[error] ... End of script output before headers: index.php[error] ... Premature end of script headers
- Copia el texto del error. Si ves algo como "Allowed memory size", el problema es la memoria. Si ves "Call to undefined function", es un plugin o tema.
[WARNING] Si tu servidor usa Syspanel (antes HestiaCP), el acceso a logs es similar: busca "Logs" o "Registros" en el panel. El puerto de acceso es el 2106.
Paso 3: Soluciones rápidas según el error
Si el error es por un plugin o tema
- Desactiva todos los plugins desde el panel de administración de WordPress. Si no puedes acceder, hazlo desde DirectAdmin:
- Ve a Gestor de Archivos.
- Renombra la carpeta
wp-content/pluginsawp-content/plugins_old. - Esto desactivará todos los plugins.
- Si el error desaparece, el problema está en uno de ellos. Ve renombrando de vuelta las carpetas de los plugins de uno en uno (por ejemplo,
plugins_old/mi-pluginaplugins/mi-plugin) hasta encontrar el culpable.
- Cambia temporalmente al tema por defecto (Twenty Twenty-Four o similar):
- En
wp-content/themes, localiza la carpeta de tu tema activo. - Renómbrala (por ejemplo,
mi-temaami-tema_old). - WordPress usará automáticamente el tema por defecto. Si el error 500 desaparece, el tema es el problema.
- En
Si el error es por el archivo .htaccess
- En el Gestor de Archivos, busca el archivo
.htaccessen la raíz de tu sitio. - Renómbralo a
.htaccess_old. - Recarga tu sitio. Si funciona, el .htaccess estaba dañado.
- Ve a Ajustes > Enlaces permanentes en WordPress y haz clic en "Guardar cambios" para regenerar el .htaccess automáticamente.
Si el error es por límite de memoria PHP
- En DirectAdmin, busca la sección Configuración de PHP o PHP Settings (a veces está en "Opções Avançadas" o "PHP Selector").
- Aumenta el valor de
memory_limita al menos256Mo512M. Guarda los cambios. - También puedes editar el archivo
wp-config.phpy añadir:define('WP_MEMORY_LIMIT', '256M');
Si el error es por permisos de archivos
- En DirectAdmin, selecciona toda la carpeta
public_html(o la raíz de tu sitio). - Haz clic en Cambiar permisos.
- Establece:
- Directorios:
755 - Archivos:
644 - (A veces es recomendable
750para directorios y640para archivos, pero 755/644 es más seguro para la mayoría).
- Directorios:
- Marca la opción Recursivo (aplicar a subcarpetas y archivos).
- Aplica los cambios.
[INFO] Los permisos incorrectos son una causa común de error 500. El servidor necesita poder leer los archivos, pero no siempre ejecutarlos.
Paso 4: Restaurar archivos principales de WordPress
Si nada funciona, es posible que algún archivo central de WordPress esté corrupto.
- Descarga una copia limpia de WordPress desde wordpress.org.
- Descomprime el archivo en tu computadora.
- Sube a tu servidor (vía DirectAdmin) solo las carpetas
wp-adminywp-includes, y los archivos de la raíz (exceptowp-config.phpywp-content). - Sobrescribe los archivos existentes.
- Recarga tu sitio. Esto repara archivos dañados sin perder tu contenido.
Paso 5: Preguntas frecuentes (FAQ)
¿Por qué aparece el error 500 después de actualizar un plugin?
Es muy común. La actualización puede tener un conflicto con tu tema u otros plugins. Sigue el Paso 3 para desactivar plugins.
¿Puedo solucionar el error 500 sin entrar a DirectAdmin?
Sí, a veces solo con FTP. Pero DirectAdmin te da más herramientas (logs, permisos, PHP settings). Si solo tienes FTP, puedes hacer lo mismo: editar wp-config.php, renombrar carpetas, etc.
¿El error 500 daña mi base de datos?
No directamente. El error 500 es del servidor, no de la base de datos. Pero si el problema persiste, podría afectar la experiencia de usuario y el SEO.
¿Qué hago si veo "Allowed memory size" en los logs?
Aumenta el límite de memoria PHP como explico en el Paso 3. Si no puedes desde DirectAdmin, pide a tu hosting que lo haga.
¿Cómo evito el error 500 en el futuro?
- Mantén WordPress, plugins y temas actualizados.
- Haz copias de seguridad periódicas.
- Usa un plugin de caché y optimización.
- No instales plugins de fuentes dudosas.
[TIP] Si después de todo esto el error 500 persiste, contacta a tu proveedor de hosting. Puede ser un problema de configuración del servidor que solo ellos pueden arreglar (por ejemplo, un módulo de PHP desactivado o un error en la configuración de Apache/Nginx).
Resumen final
El error 500 WordPress desde DirectAdmin se soluciona en 5 pasos:
- Activa el modo debug de WordPress para ver el error exacto.
- Revisa los logs del servidor en DirectAdmin.
- Aplica la solución específica: desactiva plugins/temas, repara .htaccess, aumenta memoria, o corrige permisos.
- Restaura archivos principales de WordPress si es necesario.
- Si nada funciona, contacta a tu hosting.
Recuerda que Syspanel (antes HestiaCP) funciona igual, solo que accedes por el puerto 2106. No te desanimes, este error tiene solución y tú puedes hacerlo. ¡Suerte!
