WordPress es el CMS más popular y usado del mundo, tiene una interfaz súper simple y además no requiere de muchos conocimientos técnicos para que podamos echarlo a andar, sin embargo hay situaciones en las cuales nos podemos encontrar con diversos errores que no son fáciles de resolver, como puede ser el caso del Error 503 Service Unavailable.
Este artículo lo vamos a dedicar a este error en particular, así que a continuación aprenderás cómo resolver el Error 503 Service Unavailable en WordPress y también descubrirás por qué ocurre.
Contenido
En Internet existen diversos códigos para designar los distintos tipos de errores con los que nos podemos cruzar. Por ejemplo un error 404 indica que no se ha encontrado el contenido solicitado, así como un error 403 indica que existe un problema de propietarios o permisos en nuestro sitio, un error 500 significa error interno de servidor.
En el mundo del hosting, el error 503 significa que el servidor ha recibido nuestra petición pero no ha sido capaz de procesarla. ¿Qué quiere decir eso exactamente?
Para entenderlo debemos saber cómo funciona un servidor. Para no irnos por las ramas aquí, la explicación básica es que nuestro navegador envía una request o petición al servidor. Este responde con un código y despachando el sitio, dicho código por lo general es el 200 para indicar que la petición fue despachada satisfactoriamente, pero en el caso de haber algún problema el código de respuesta cambiará, y un error 503 indica que efectivamente hubo un problema.
Causas del Error 503 en WordPress
Como ya veníamos diciendo, el error 503 nos está indicando que el servidor web en este momento no puede despachar la web. Esto puede ser un error temporal o bien puede ser un error fijo, es decir, no se irá «por sí solo» (en realidad nada se arregla por arte de magia, pero eso es otro tema).
Existen varias causas detrás de un error 503, entre las cuales podemos encontrar problemas a nivel de la red, un error en la configuración del DNS o de la zona DNS del dominio en cuestión, o incluso un problema de recursos para despachar la petición (debido a una sobrecarga por ejemplo).
Como ya decíamos, las causas de un error 503 pueden ser varias, y obviamente WordPress no es el único sistema que puede presentar un error de este tipo, de hecho le puede pasar a prácticamente cualquier clase de sitio. Sin embargo, hablando de WordPress en particular, ¿qué provoca el error 503?
Dejando de lado causas ya mencionadas como sobrecargas, problemas de DNS o de fallos en la red, la mayoría de los errores 503 en WordPress tienen su origen en el uso de scripts propios, es decir, scripts que no forman parte de la estructura por defecto de WordPress, así como también se puede dar por problemas generados a nivel de plugins o incluso del lado del theme que estemos usando.
Resumiendo, las causas del error 503 en WordPress se pueden dar tanto por problemas a nivel del servidor como también por algún conflicto en el sitio mismo. Esto quiere decir que no existe una solución universal para este error, sino que debe ser resuelto según cada caso.
Por fortuna este error es, en general, fácil de resolver, aunque llegar hasta dicha solución puede llevar algún tiempo dependiendo de donde se origine el problema.
Basándonos en el modelo cliente-servidor, varias de las causas pueden estar del lado del servidor, en cuyo caso quien se encargará de resolverlo será el administrador del server. Si tienes un buen proveedor de hosting entonces no deberían demorar mucho en resolver un problema de este tipo que se esté originando a nivel del server.
¿Pero qué sucede si el error surge a partir de nuestro sitio? En ese caso debemos ponernos manos a la obra y primero que nada examinar las fuentes. Ya hemos mencionado tres de ellas: plugins, themes y scripts propios.
Error 503 causado por un plugin
Para el caso de los plugins, lo mejor que podemos hacer es comenzar a desactivarlos de uno en uno.
Esto lo puedes hacer directamente desde el panel de administración de WordPress, ingresas allí y vas desactivando los plugins de a uno y probando el sitio, hasta dar con el problemático. ¿Y si no puedes acceder al panel porque también da error?
En ese caso hay que ponernos los guantes y echar manos a la obra, ya que vamos a desactivar los plugins desde un gestor de FTP, aunque el gestor de archivos de cPanel también sirve.
Por medio de un gestor de FTP tendremos que ingresar en la carpeta wp-content/plugins de nuestro sitio, y allí dentro veremos las carpetas de cada plugin. Lo que haremos es ir quitando permisos (es decir, asignar permisos 000) de una en una y probando el sitio.
Dicho proceso es similar a lo que haríamos desde el administrador de WordPress, solo ten en cuenta que es posible que necesites volver a reconfigurar tus plugins posteriormente. Si das con el plugin problemático, puedes devolver los permisos a los anteriores, con usar 755 debería ser suficiente.
Genial, has encontrado el plugin problemático pero lo tienes que dejar desactivado porque rompe tu sitio, ¿qué hacer en ese caso?
En esa situación la ayuda debe venir de parte del programador del plugin, es decir, el equipo o persona que lo desarrolló, así que ponte en contacto con el desarrollador del plugin problemático e informa de la situación.
Error 503 provocado por la plantilla
Si has realizado estos procedimientos y no encuentras un plugin problemático, entonces existe la posibilidad de que el error lo provoque el theme o plantilla que estás usando.
De ser así, tendrás que realizar el mismo proceso que hiciste con los plugins, pero esta vez desactivando el theme.
Puedes hacerlo desde el administrador de WordPress o bien, si no está disponible, por medio de FTP o un gestor de archivos. Recuerda que las plantillas en WordPress se guardan dentro de wp-content/themes. Busca allí tu theme activo y le pones permisos 000 o le cambias el nombre, y entonces prueba tu sitio.
Si la web comienza a funcionar entonces el error 503 es provocado por tu plantilla. Puedes intentar bajarla de nuevo, quizá solo falte algún archivo y eso provoque el error, o bien tendrás que contactar a su creador y plantearle el caso. Si no logras obtener una solución por ese lado pues muy seguramente no te quede más remedio que cambiar el theme de tu sitio.
Finalmente, el otro posible causante de nuestras pesadillas puede ser algún script propio que tengamos en el sitio. En ese caso la mejor opción que podemos tomar es la de habilitar la muestra de errores, de lo contrario será muy difícil encontrar el problema haciendo una búsqueda manual entre scripts.
Para habilitar la muestra de errores en PHP hay varias opciones, quizá la más sencilla es abrir nuestro archivo wp-config.php (ubicado en la raíz del sitio) y agregar cerca del final la siguiente línea:
@ini_set( 'display_errors', 1 );
Debemos colocarlo en la posición indicada en la imagen, no en la última línea del archivo.
Guardamos el cambio, probamos el sitio y deberíamos ver en donde se encuentra el origen del error.
Si por alguna razón no podemos acceder a este método para mostrar los errores de PHP, entonces podemos optar por hacerlo mediante el PHP de nuestro usuario, siempre y cuando podamos personalizarlo claro.
Esto no debería ser problema si tu hosting provee un servidor moderno (como LiteSpeed o Nginx) con PHP personalizable, por ejemplo si dispones de cPanel es 99% seguro que podrás configurar la variable display_errors a gusto, pregunta a tu proveedor por ello.
En la imagen de abajo podemos ver desde dónde hacer este cambio en los servidores de Infranetworking por medio del Selector PHP disponible en cPanel.
Una tercera forma de activar la visualización de errores en PHP mediante display_errors es directamente editando el php.ini del servidor, pero debemos tener en cuenta que para esto es necesario que tengamos acceso root al server, y también es indispensable que sepamos usar la consola.
Es una solución bastante más técnica sin dudas pero también es una posibilidad en caso de que esté disponible.
En caso de que actives el display_errors de PHP, sin importar si lo hiciste mediante wp-config.php o con uno de los otros métodos descritos, recuerda desactivarlo cuando ya no lo necesites, ya que tenerlo activo en forma permanente es una grave falla a nivel de seguridad.
Ten en cuenta que dejar la variable display_errors en On puede ocasionar que se muestre parte de tu código y de tu estructura de archivos y carpetas, y eso puede ser utilizado por terceros para hackear tu sitio, subir contenido malicioso, etc.
Resumen
Como ya hemos visto el error 503 en WordPress puede ser bastante molesto, pero su solución generalmente es simple.
El problema se puede presentar tanto por un error del lado del server como también originarse del lado de WordPress, en cuyo caso es recomendable verificar nuestros plugins y themes para encontrar la causa, así como activar la visualización de errores en PHP temporalmente, con todo esto debería ser más que suficiente para ubicar el origen.
Una vez hemos encontrado el origen del error 503 tendremos que evaluar cómo resolverlo, y eso ya depende de dónde esté el problema.
Si es un conflicto de un plugin o de un theme generalmente debemos contactar con el desarrollador de dicho plugin o de la plantilla, mientras que si es un problema de un script propio tendremos que verlo por nuestra cuenta o con ayuda de nuestro programador si no fuimos nosotros quienes lo programamos.
¿Buscas Hosting WordPress rápido, estable y seguro?
Potenciados por LiteSpeed y Discos SSD de alta velocidad