Encontrarte con errores en tu sitio puede ser intimidante. Sin embargo, la mayoría de los errores te dan alguna pista sobre su causa, lo que puede facilitar mucho la solución de estos problemas comunes. Por desgracia, el error 503 no es tan educado y no te da mucha información para seguir adelante.

Es útil comprender cuáles son las causas más comunes del error 503. Después, tendrás que ser metódico a la hora de solucionar el error, lo que significa seguir varios pasos para localizar la raíz del problema.

En este artículo, explicaremos qué es el error 503 y cómo suele manifestarse. A continuación, te guiaremos a través de seis pasos para solucionarlo. ¡Manos a la obra!

¿Qué es un error HTTP 503?

El Grupo de Trabajo de Ingeniería de Internet (IETF, The Internet Engineering Task Force) define el error 503 Service Unavailable (503 Servicio no disponible) como:

El código de estado 503 (Servicio No Disponible) indica que el servidor es actualmente incapaz de gestionar la solicitud debido a una sobrecarga temporal o a un mantenimiento programado, que probablemente se aliviará tras un cierto retraso. El servidor PUEDE enviar un campo de cabecera Retry-After para sugerir al cliente un tiempo adecuado de espera antes de reintentar la solicitud.

Cuando te encuentras con el error 503, significa que el servidor en cuestión no está disponible. Esto podría deberse, por ejemplo, a que está demasiado ocupado o a que se está realizando un mantenimiento. A diferencia de otros códigos de error similares, el 503 indica que tu página web está online y en funcionamiento, pero que no se puede acceder a ella en este momento.

Lo más molesto de este error en concreto es que apenas te da información para saber qué pasa. La mayoría de las veces, solo aparece un mensaje que dice «Servicio temporalmente no disponible». Es como llamar por teléfono a un restaurante y que te digan que está cerrado, pero se nieguen a decirte cuándo volverá a abrir.

Si tienes suerte, el código de error 503 se habrá producido porque tu sitio está en mantenimiento. WordPress pone tu sitio en modo de mantenimiento durante un breve instante cuando actualizas un plugin, un tema o el software principal:

Error HTTP 503 en WordPress
Modo de mantenimiento

Normalmente, este lapso es tan breve que nadie se da cuenta. Sin embargo, en los casos en los que el error 503 persiste, tendrás un problema más grave entre manos. Al fin y al cabo, no solo los usuarios no podrán visitar tu sitio web, sino que tú tampoco podrás acceder al panel de administración de WordPress. Eso significa que no podrás actualizar tu sitio de ninguna manera y, para solucionar el problema, tendrás que revisar sus archivos.

Código de error Error 503: servicio no disponible
Tipo de error Error del lado del servidor
Variaciones del error 503 Servicio No Disponible
503 Servicio Temporalmente No Disponible
Error HTTP del Servidor 503
Error HTTP 503
Causas del error Picos de tráfico inesperados
Problemas de comunicación con el servidor
Agotamiento de recursos
Ataque DDoS
Incompatibilidad entre plugins o temas

Variaciones del error 503

El error 503 puede aparecer de muchas formas. Sin embargo, casi todas las variantes vienen acompañadas de ese código 503, lo que hace que sea fácil de identificar.

Estas son algunas de las variantes con las que te puedes encontrar, dependiendo de la configuración de tu servidor y de tu navegador:

  • 503 Servicio No Disponible
  • 503 Servicio Temporalmente No Disponible
  • Error 503 Servidor HTTP
  • Error 503 HTTP
  • Error 503 Servicio No Disponible
  • El servidor no puede atender su solicitud temporalmente debido al tiempo de inactividad del mantenimiento o a problemas de capacidad. Por favor, inténtelo de nuevo más tarde.

Sea cual sea el código con el que te encuentres, significa que tienes que ponerte manos a la obra cuanto antes para que no afecte negativamente a tus usuarios.

¿Qué Causa un Error HTTP 503?

Estas son las razones más comunes por las que un servidor no puede gestionar una solicitud de forma temporal:

  • Se está enviando un gran número de solicitudes al servidor, lo que agota todos los recursos disponibles.
  • El servidor está experimentando problemas técnicos o se están realizando tareas de mantenimiento.
  • El servidor podría estar sufriendo un ataque de denegación de servicio (DDoS).

También hay otros problemas técnicos que provocan un error 503, como problemas con plugins o temas. Para encontrar estas páginas, así como para monitorizar tu sitio en busca de otros errores, puedes usar la herramienta Sitechecker.

La comprobación de hasta 900 páginas es gratuita, con un rastreo automático cada 3 días. Si te suscribes a un plan de pago, podrás configurar la monitorización diaria o incluso cada 12 horas.

¿Cómo Solucionar el Error 503?

Como a menudo no puedes estar seguro de qué ha provocado el error 503 en una situación concreta, tendrás que solucionarlo de forma metódica. Las siguientes seis secciones abordan posibles soluciones para resolver las diferentes causas posibles.

Después de cada paso, tómate un momento para volver a tu página web y comprobar si el error 503 ha desaparecido. Si es así, has solucionado el problema con éxito. Si no, pasa al siguiente paso del proceso.

1. Desactiva Temporalmente tus Plugins

Una de las causas más comunes del error 503 en WordPress son los problemas de compatibilidad entre plugins. Para determinar si ese es el caso, tendrás que desactivar todos los plugins de tu sitio web.

Como el error 503 te impide acceder al panel de administración, tendrás que usar un cliente FTP para este paso. Si no tienes ninguno configurado, te recomendamos FileZilla.

Una vez que tengas listo tu cliente FTP, conéctate a tu sitio web a través de él y ve a tu carpeta raíz. Por si no la encuentras, suele llamarse public_html, html, public, www o el nombre de tu sitio web. Si eres cliente de Kinsta, es tu carpeta public.

Carpeta raíz de WordPress SFTP
Carpeta raíz de WordPress SFTP

Abre esa carpeta y ve al directorio wp-content. Dentro, verás una carpeta llamada plugins, que contiene subdirectorios individuales para cada uno de los plugins instalados en tu sitio (tanto los activos como los inactivos).

Lo que vas a hacer ahora es hacer clic con el botón derecho del ratón en la carpeta plugins y cambiarle el nombre por otro. Te recomendamos que la llames plugins.old o plugins.deactivated, para que puedas reconocerla fácilmente más adelante.

Carpeta de plugins de WordPress renombrada
Carpeta de plugins de WordPress renombrada

WordPress no podrá encontrar ninguno de tus plugins. Cuando esto sucede, los desactivará automáticamente.

Ahora, intenta acceder a tu panel de control. Si el error 503 ha desaparecido, puedes dar por hecho que uno de tus plugins era el culpable. Solo tienes que averiguar cuál era el problema.

Vuelve al directorio wp-content y cambia el nombre de tu carpeta original de plugins correctamente. A continuación, tendrás que desactivar cada uno de tus plugins uno por uno, hasta que encuentres el culpable.

Para ello, abre el directorio wp-content/plugins. Dentro encontrarás una carpeta para cada uno de tus plugins. El proceso que vas a seguir es muy similar al anterior:

  1. Empieza por la primera carpeta y cámbiale el nombre por el que quieras.
  2. Comprueba tu página web para ver si el error ha desaparecido.
  3. Si no es así, vuelve a ponerle el nombre original a la carpeta del plugin del paso anterior.
  4. Pasa al siguiente plugin de tu lista y repite los pasos anteriores.

Este proceso puede llevarte un rato si tienes muchos plugins, pero es fundamental comprobar cada uno de ellos por separado. Si en algún momento identificas el plugin que está causando el error, puedes desinstalarlo o sustituirlo por otra herramienta.

Si llegas al final de estos pasos sin encontrar una solución, puedes pasar a la siguiente fase de resolución de problemas.

2. Desactiva el Tema de tu Sitio Web

Ahora que has descartado que los plugins sean la causa del error 503, es hora de hacer lo mismo con tu tema activo. De hecho, tu tema también podría estar causando problemas de compatibilidad.

Por desgracia, el proceso no funciona igual que el anterior. WordPress no volverá al tema predeterminado si simplemente cambias el nombre de la carpeta del tema; acabarías recibiendo un error del tipo «El directorio del tema «nombre del tema» no existe». O si intentas cambiar el nombre de toda la carpeta del directorio del tema, te aparecerá «ERROR: El directorio de temas está vacío o no existe. Por favor, comprueba tu instalación».

Error: el directorio del tema no existe
Error: el directorio del tema no existe

Por eso, tienes que acceder a tu base de datos de WordPress y editar allí la referencia a tu tema. Muchos proveedores de alojamiento para WordPress —incluido Kinsta— ofrecen acceso a la base de datos mediante la herramienta gratuita phpMyAdmin. Los usuarios de Kinsta pueden averiguar cómo iniciar sesión en phpMyAdmin yendo a Sitios > nombre del sitio > Información en el panel de control de MyKinsta y desplazándote hasta la tarjeta Acceso a la base de datos:

Una captura de pantalla de la ficha de información de acceso a la base de datos en MyKinsta.
Cómo encontrar phpMyAdmin y las opciones de acceso a la base de datos en MyKinsta.

Los usuarios de Kinsta también pueden acceder a la base de datos de WordPress de un sitio directamente desde MyKinsta yendo a Sitios > nombre del sitio > Base de datos.

Da igual cómo accedas a la base de datos: selecciona la tabla wp_options y busca la entrada que contenga template en la columna option_name. El valor de option_value de esa entrada será el nombre de la plantilla que esté activa ahora mismo. Cámbialo por uno de los temas predeterminados, como «twentynineteen».

Una captura de pantalla de la herramienta Base de datos en MyKinsta, con la tabla wp_options resaltada.
Editando el nombre de la plantilla actual en la tabla wp_options.

En la imagen de arriba, se está editando el nombre de la plantilla en la herramienta Base de datos de MyKinsta. Una vez que hayas introducido un nombre alternativo para el tema, guarda el cambio haciendo clic en el icono verde con forma de disco que hay en la parte superior de la página.

Vuelve a comprobar tu sitio web para ver si así se ha solucionado el error. Si es así, simplemente significa que se trata de un problema con el tema de tu sitio web y quizá te interese volver a instalarlo o restaurar la copia de seguridad más reciente.

3. Desactiva Temporalmente tu Red de Distribución de Contenidos (CDN)

A veces, el error 503 aparece no por un problema en tu sitio web, sino por tu red de distribución de contenidos (CDN). Si usas una CDN, una forma rápida de averiguar si ese es el caso es desactivarla temporalmente.

Toda red CDN debería incluir alguna funcionalidad que te permita pausar sus servicios. Si estás en Kinsta, puedes desactivar tu CDN de Kinsta yendo a Sitios > nombre del sitio > Caché en tu panel de control de MyKinsta, seleccionando la pestaña CDN y haciendo clic en el botón Desactivar:

Una captura de pantalla en la que se ven los controles de la caché de MyKinsta con la pestaña CDN activa.
Desactivar la CDN desde el panel de control de MyKinsta.

El proceso que tienes que seguir puede variar según la CDN que utilices. También se sabe que Cloudflare a veces provoca errores 503. Si no encuentras la opción para pausar la tuya, echa un vistazo a la base de conocimientos de tu servicio, donde normalmente encontrarás instrucciones detalladas.

Si no usas una CDN o ves que pausar el servicio no te ayuda a solucionar el problema, aún te quedan algunas soluciones más que puedes probar. No te olvides de volver a activar la CDN antes de seguir adelante.

4. Limita la API «Heartbeat» de WordPress

WordPress Heartbeat es una API integrada en WordPress que la plataforma utiliza para guardar automáticamente el contenido, mostrarte notificaciones de plugins, avisarte cuando alguien más está trabajando en una entrada a la que intentas acceder y mucho más.

Al igual que los latidos del corazón, la API funciona en segundo plano a gran frecuencia para no perderse nada. Como te puedes imaginar, esta API consume recursos del servidor. Normalmente, eso no supone ningún problema, pero en algunos casos puede provocar un error 503 si tu servidor no puede soportar la carga.

La forma más rápida de saber si la API de Heartbeat es la causa de tus problemas es desactivarla temporalmente. Para ello, vuelve a conectarte a tu sitio web de WordPress por FTP, abre la carpeta de tu tema actual y busca el archivo functions.php dentro de ella:

Archivo functions.php de un tema de WordPress
Archivo functions.php del tema de WordPress

Haz clic con el botón derecho del ratón en el archivo y selecciona la opción Ver/Editar, lo que lo abrirá con tu editor de texto local. Una vez abierto, tendrás que añadir el siguiente fragmento de código en su interior:

add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}

Esas tres líneas de código le indican a WordPress que desactive la API Heartbeat. Guarda los cambios en el archivo functions.php, ciérralo e intenta acceder de nuevo a tu sitio web.

Si el error 503 ha desaparecido, sabrás que el problema era la API. Sin embargo, desactivarla por completo elimina muchas funciones útiles. En su lugar, te recomendamos que «ralentices» el Heartbeat, para que no cause problemas.

La forma más fácil de hacerlo es instalando el plugin Heartbeat Control. Activa el plugin y ve a la sección Ajustes > Heartbeat Control. Busca las opciones Modificar Heartbeat y reduce la frecuencia al valor más bajo posible:

Frecuencia del plugin Heartbeat Control
Frecuencia del plugin Heartbeat Control

Guarda los cambios en tu configuración y vuelve al archivo functions.php que modificaste hace un rato. Para que los cambios anteriores funcionen, tendrás que eliminar el fragmento de código que añadiste antes y guardar los cambios en el archivo.

En este punto, el error 503 debería haber desaparecido si el problema era la API de Heartbeat. Si no es así, es hora de probar algo diferente.

5. Aumenta los Recursos de tu Servidor

Si el error 503 sigue apareciendo a pesar de todos los intentos que has hecho hasta ahora para solucionarlo, es muy probable que el problema se deba a una falta de recursos del servidor. Es decir, tendrás que mejorar tu plan de alojamiento para ver si así se soluciona el problema. Esto ocurre especialmente si utilizas un alojamiento barato para WordPress, ya que suelen limitar los recursos.

En Kinsta no hacemos eso. Ofrecemos un excelente alojamiento administrado para WordPress.

Sin embargo, actualizar tu plan es una decisión importante. Lo más inteligente es que primero te pongas en contacto con el servicio de soporte de tu proveedor de alojamiento web y comentes con ellos el error 503, así como los pasos que has dado hasta ahora para intentar resolverlo. El equipo de soporte debería poder ayudarte a averiguar la causa y aconsejarte sobre si necesitas mejorar tu plan o no.

6. Revisa tus Registros y Activa WP_DEBUG

También deberías aprovechar tus registros de errores. Si eres cliente de Kinsta, puedes ver fácilmente los errores en el visor de registros (Sitios > nombre del sitio > Registros) y activar el modo de depuración de WordPress en el panel de control de MyKinsta. Esto puede ayudarte a identificar rápidamente el problema, sobre todo si se debe a un plugin de tu sitio.

Una captura de pantalla de la página Visor de registros en MyKinsta.
Cómo ver el archivo error.log en el panel de control de MyKinsta.

Si tu proveedor de alojamiento no tiene una herramienta de registro, también puedes añadir el siguiente código a tu archivo wp-config.php para activar el registro:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Los registros suelen estar en el directorio /wp-content. Dentro de él, busca un archivo llamado debug.log y ábrelo.

Otros, como en Kinsta, pueden tener una carpeta específica llamada «logs».

Carpeta de registros de errores de WordPress (SFTP)
Carpeta de registros de errores de WordPress (SFTP)

Interpretar tu registro de depuración puede resultar un poco intimidante, pero no es tan difícil de leer como podrías imaginar. En pocas palabras, el registro contiene todos los errores que aparecen en tu sitio en orden cronológico. Muestra qué archivo ha provocado cada error, así como las líneas de código concretas que lo han causado.

Ojo: no vas a encontrar referencias directas al error 503 en tu registro. Aun así, si todo lo demás falla, puede orientarte en la dirección correcta mostrándote qué archivos están causando problemas. Así sabrás dónde centrar tus esfuerzos a continuación. Como mencionamos en el paso anterior, ahora es un buen momento para ponerte en contacto con tu proveedor de alojamiento si necesitas más ayuda para resolver este error.

También puedes consultar los archivos de registro de Apache y Nginx, que suelen estar aquí:

  • Apache: /var/log/apache2/error.log
  • Nginx: /var/log/nginx/error.log

Para saber más, échale un vistazo a nuestra comparativa de servidores web: Nginx vs Apache.

Si eres cliente de Kinsta, también puedes aprovechar nuestra herramienta de analítica para obtener un desglose del número total de errores 503 y ver con qué frecuencia y cuándo se producen. Esto puede ayudarte a solucionar el problema si se trata de una incidencia recurrente o, tal vez, de algo que se ha resuelto por sí solo.

Si el error 503 aparece debido a un error grave de PHP, también puedes intentar activar los informes de errores de PHP. Solo tienes que añadir el siguiente código al archivo que está dando el error. Normalmente, puedes localizar el archivo en la pestaña Consola de las Herramientas de desarrollo de Google Chrome.

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

Y puede que también tengas que modificar tu archivo php.ini con lo siguiente:

display_errors = on

Resumen

Si tienes suerte, el error 503 solo aparecerá cuando pongas tu página web en modo de mantenimiento. Sin embargo, si aparece sin previo aviso, tendrás que arremangarte y ponerte manos a la obra para solucionarlo.

Para llegar a la raíz del error 503, tendrás que seguir estos pasos para solucionarlo:

  • Desactiva temporalmente tus plugins.
  • Desactiva el tema de tu página web.
  • Desactiva temporalmente tu red de distribución de contenidos (CDN).
  • Limita la API Heartbeat de WordPress.
  • Aumenta los recursos de tu servidor.
  • Revisa tus registros y activa WP_DEBUG.

¿Te has encontrado alguna vez con el error HTTP 503? ¡Comparte tus experiencias con nosotros en la sección de comentarios de abajo!

Matteo Duò

Marketing Consultant for WordPress plugin developers.