Guía Para Solucionar El Error 405 Method Not Allowed

Guía Para Solucionar El Error 405 Method Not Allowed thumbnail

Curiosamente, los errores de código HTTP son realmente útiles e increíblemente frustrantes al mismo tiempo. 

Ver un error cuando cargas una página te hace saber muy claramente que algo está mal con el sitio web — Pero la mayoría de nosotros no tiene la menor idea de qué significa “405 Method Not Allowed” o “error 405 No Permitido”, y mucho menos cómo solucionarlo. 

¡Es por eso que escribimos esta guía útil! Un error 405 no es razón para entrar en pánico, hay algunos pasos para restaurar tu sitio web y que siga funcionando como siempre. 

En las siguientes páginas, te explicaremos de qué se trata este error y te mostraremos cómo hacer que desaparezca. 

¿Qué Es el Error 405 Method Not Allowed?

El error 405 es un tipo de código de estado HTTP — Esto quiere decir que es un mensaje que el servidor le envía a tu navegador web, explicando por qué no puede entregar el contenido que solicitaste. 

Glosario de DreamHost

Servidor

Un servidor es una computadora que guarda datos. Un servidor web es un tipo de servidor que guarda y entrega los sitios web o las aplicaciones a los usuarios. Los servidores web están conectados al internet y usan HTTP o HTTPS para enviar las páginas web a los usuarios que las solicitan.

Un código de estado 405 persistente es un problema para cualquier persona que administre un sitio web. Si múltiples usuarios ven el mismo error, eso quiere decir que algo está mal configurado en tu sitio web. 

Ejemplo error 405 método no permitido

Hasta que soluciones el problema, los visitantes no podrán acceder a la página donde el código de error es visible. 

Este error de código puede aparecer como: 

  • 405 Method Not Allowed
  • 405 Not Allowed
  • Method Not Allowed
  • HTTP 405 Error
  • HTTP Error 405 – Method Not Allowed
  • HTTP 405 Method Not Allowed

¿Qué Causa el Error 405?

Pongámonos un poco más técnicos. 

Cuando intentas visitar una página específica, tu navegador le pide al servidor de alojamiento que envíe el contenido. Típicamente, el servidor ve la solicitud y manda la página directamente a tu dispositivo en una fracción de segundo. 

Este proceso completo es regulado por el Hypertext Transfer Protocol (HTTP), o el Protocolo de Transferencia de Hipertexto. Este protocolo utiliza una serie de estados de código para rastrear el progreso y los problemas. 

Significado códigos de error web
Los códigos 400 se relacionan con los errores del lado del cliente. Y el error 405 Method Not Allowed, significa que tu navegador ha enviado una solicitud HTTP (GET, POST, PUT, etc.) que no está habilitada para ese recurso o URL. 

En muchos casos, esto es desencadenado por algo que el usuario hace. La causa más común es ingresar la URL incorrecta. 

Sin embargo, el código de error 405 también puede aparecer cuando algo ha salido mal con la configuración de tu sitio web. Exploraremos algunos de estos problemas más adelante. 

¿Cuál es la Diferencia Entre los Errores 404 y 405?

Los errores 404 y 405 previenen que los usuarios accedan al contenido de tu sitio web, pero pueden estar relacionados con diferentes problemas. 

Comparación errores 404 vs 405
El código de error 404 se muestra cuando alguien visita una URL donde no existe contenido. Por ejemplo, esto algunas veces sucede cuando las páginas son eliminadas o los dominios son cambiados.

En contraste, el error 405 significa que tu servidor está rechazando una solicitud HTTP de un navegador. El contenido está ahí, pero el servidor se rehúsa a proporcionar acceso porque la solicitud fue hecha en el formato incorrecto.

Cómo Solucionar el Error 405 Method Not Allowed

Entender qué causa el error 405 es un paso importante para resolver el problema. 

Sin embargo, este estado de código no nos dice exactamente qué es lo que está mal. La única manera de identificar el problema preciso es buscar la fuente del problema. 

¿Estás listo para comenzar? Aquí está la lista de verificación de las posibles soluciones: 

1) Verifica Tus Enlaces

Cuando ves un error 405 en su estado natural, hay una gran posibilidad de que simplemente hayas visitado la página incorrecta. 

Por razones de seguridad, los servidores web típicamente están configurados para aceptar solamente algunos tipos específicos de solicitudes en cada URL. Si visitas una página que no está abierta para ser accedida, puede que veas un mensaje de error 405.

Si los visitantes de tu sitio ven códigos de error 405 constantemente, puede ser debido a que tienen un enlace incorrecto. 

Una manera de prevenir esto es verificando tu sitio con la herramienta Dead Link Checker o una herramienta similar gratuita. Y asegúrate que ninguno de tus enlaces de redes sociales y páginas de destino apuntan hacia páginas privadas. 

Herramienta de verificación de enlaces muertos Dead Link Checker

2) Revisa Tus Actualizaciones

¿Has actualizado tu sistema de gestión de contenido, tu tema o incluso un plugin recientemente? Esa puede ser la razón por la que de repente estás viendo un mensaje de error 405 Method Not Allowed.

Las actualizaciones son esenciales para mantener una buena seguridad de sitio web. También pueden solucionar bugs existentes, y darte acceso a nuevas funciones. Pero, solo ocasionalmente, las actualizaciones nuevas introducen nuevos gremlins. 

Si no estás seguro de que hay una actualización pendiente, inicia sesión en tu cuenta de administrador y navega a la página ‘Escritorio > Actualizaciones’. Aquí, verás la fecha y hora de la última vez que WordPress verificó si había actualizaciones pendientes. De ser necesario, puedes hacer clic en “Comprobar de Nuevo” para verificar manualmente las actualizaciones.

Desafortunadamente, algunas veces una actualización puede dañar tu sitio web. Para solucionar esto, simplemente puedes revertir a la versión anterior de tu sistema, tema o plugin que pueda estar causando problemas. 

El proceso exacto aquí depende de lo que necesites cambiar. Por ejemplo, los usuarios de WordPress pueden utilizar el plugin WP Downgrade para revertir a una versión anterior. 

WP Downgrade Plugin
Para algunos sitios web, la ruta más fácil es simplemente restaurar tu sitio entero desde una copia de seguridad — ve al paso 10 para más información. 

Cómo Cambiar la Versión de Plugins y Temas WordPress

Si crees que un tema en específico o plugin está causando el problema, te recomendamos emplear el plugin WP Rollback. Una vez activado, te da la opción de cambiar la versión de cualquier plugin o tema que hayas instalado.

Simplemente, dirígete a Plugins > Plugins Instalados o Apariencia > Temas en tu panel administrativo de WordPress, y verás un botón “Retroceder” bajo cada tema o plugin.

Haz clic en esto y WP Rollback te permitirá elegir la versión exacta que deseas restaurar. 

Plguin de WordPress WP RollBack

Una vez que cambias la versión, asegúrate de hacer clic en ‘Activar’ en el plugin o tema para poner la versión antigua en acción. 

3) Desinstala Nuevos Plugins, Módulos, y Temas

Así como las actualizaciones existentes de plugins y temas pueden dañar las cosas, también pueden hacer las nuevas adiciones a tu sitio. 

Con esto en mente, vale la pena desactivar los nuevos plugins, módulos y temas si comienzas a ver errores 405 Method Not Allowed en tu sitio. 

Una vez más, el proceso aquí dependerá del sistema de gestión de contenido que estés empleando. 

En WordPress, puedes hacer esto a través del área Administrativa. Navega a Plugins o Apariencia > Temas, y verás un botón rojo Desactivar junto a cada plugin o tema. 

¿No estás seguro de qué plugin está causando el problema? Puedes deshabilitar todos tus plugins en un minuto a través de FTP o SSH:

  1. En tu cliente FTP/SSH, dirígete al directorio de tu sitio WordPress 
  2. Navega a wp-content y haz clic derecho en plugins
  3. Selecciona Rename
  4. Cambia el nombre de la carpeta a /plugins_OFF

Esto inmediatamente apagará todos los plugins. Cuando desees revertir este proceso, simplemente sigue los pasos de nuevo y renombra la carpeta de nuevo como plugins.

Si deseas eliminar temas a través de FTP/SSH:

  1. Visita el directorio de tu sitio
  2. Navega al directorio wp-content/themes.
  3. Elimina la carpeta del tema que deseas eliminar

Solo ten en cuenta que querrás guardar una copia de seguridad de esta carpeta, solo en caso de que el tema no sea la causa. 

4) Restaura Tu Base de Datos

Los plugins y temas usualmente necesitan al menos un acceso básico a tu base de datos para realizar sus tareas.

Algunas veces se ponen algo revoltosos y comienzan a hacer cambios a algunas partes de la base de datos donde no deberían meter las narices. Estos cambios pueden causar errores 405. 

Glosario de DreamHost

Base de Datos

Una base de datos es una colección de información que está accesible para las computadoras. Las bases de datos se usan para almacenar información como los registros de los clientes, los catálogos de productos y las transacciones financieras.

Incluso si eliminas el plugin o tema problemático, los cambios que han hecho pueden seguir allí. Hay solo 2 maneras de solucionar estos problemas: 

  • Busca a través de los registros de tu base de datos esos cambios problemáticos
  • Restaura tu base de datos a una versión anterior

Logs de Base de datos

Para acceder a los registros de error de tu base de datos de tu sitio web, dirígete al panel de tu proveedor de alojamiento. Usualmente, solo podrás acceder a estos logs si tienes un servidor privado.  

Para aquellas bases de datos alojadas con DreamHost, dirígete a Bases de Datos MySQL para encontrar el nombre de tus Bases de Datos MySQL, y luego ponte en contacto con el equipo de soporte técnico para obtener acceso. 

Si sabes exactamente cuando comenzaron a aparecer los errores 405, es posible que encuentres el cambio que está causando problemas al clasificar los registros de tu base de datos por tiempo. Estarás buscando aquellos cambios “INSERT”, “UPDATE”, o “DELETE”. 

Ten en mente que necesitas un amplio conocimiento de desarrollo web para identificar los problemas potenciales que se encuentren aquí. Si no estás seguro de qué estás buscando, evita realizar modificaciones y consulta con un profesional.

Restaura Tu Base de Datos

Si no tienes las habilidades necesarias de desarrollador, restaurar tu base de datos a una versión anterior, probablemente es una opción más realista.  

Restaurando una base de datos desde el panel de DreamHostTal como con la información del sitio, DreamHost crea automáticamente una copia de seguridad de tu base de datos a diario. Para restaurar una de estas copias de seguridad: 

  • Visita la página Bases de Datos MySQL en tu cuenta
  • Haz clic en el botón Restaurar BD a la derecha de tu base de datos
  • Elige el tiempo o fecha de la copia de seguridad que deseas restaurar
  • Bajo Al restaurar, selecciona la opción 3 o 4 dependiendo de tu CMS; elige la opción 4 para WordPress

5) Lee Tus Registros del Lado del Servidor

Así como los registros de error de tus bases de datos pueden revelar aquellos problemas que conllevan a los errores 405, también podemos encontrar pistas en los logs del lado del servidor.

Los archivos que estamos buscando aquí se llaman error.log y access.log. Con DreamHost, puedes verlos a través de SFTP  (Secure File Transfer Protocol):

  • En tu cliente FTP, visita el directorio /logs en la carpeta de tu usuario web
  • Abre el sitio que deseas revisar
  • Abre el directorio más reciente con un nombre que comienza por http
  • Abre el archivo de log que encuentras adentro, utilizando tu editor de texto preferido

Ejemplo lectura de logs del lado del servidorCuando examines los archivos, busca errores relacionados con la configuración del servidor o cambios al código de tu aplicación web. 

6) Verifica La Configuración de Tu Servidor web

Como mencionamos anteriormente, el error 405 Method Not Allowed ocurre cuando un servidor web rechaza una solicitud. 

La mayor parte del tiempo, esto es útil. Si tu servidor no bloquea ciertos métodos de solicitudes, tu sitio fácilmente podría abrumarse con tanta atención no deseada. 

Pero así como un bouncer agresivo en la puerta de un club de moda, algunas veces los servidores web bloquean el tipo incorrecto de solicitudes, o restringe el acceso incorrectamente a cierto contenido. Esto usualmente es causado por una configuración de servidor incorrecta. El resultado es que los visitantes están siendo redireccionados a una página de error. 

Para encontrar dónde está el problema en tu sitio, tendrás que visitar tu archivo de configuración de servidor. El nombre exacto del archivo dependerá de si el software de tu servidor es Apache, Nginx, o Cloudflare

En DreamHost utilizamos Apache por defecto, entonces estás buscando el archivo .htaccess en el directorio raíz de tu sitio. En los planes VPS, tienes la opción de cambiar a alojamiento Nginx; en este caso, tu configuración será nginx.conf.

Luego de encontrar el archivo relevante, ábrelo con tu editor de texto preferido. A continuación, busca los comandos de sobreescritura. Estos están asociados con el módulo mod_rewrite de Apache.

Código Rewrite PHPEste módulo te permite modificar URLs que son solicitadas por usuarios, antes de que sean procesadas por tu servidor. Esto puede ser útil cuando deseas redirigir a los usuarios a una página diferente, evitar cierto tipo de tráfico o simplemente mostrar una URL más amigable con los usuarios. 

Los problemas usualmente involucran comandos como este en tu archivo de configuración: 

RewriteRule ^(.*)$ http: //example.com [R=405, L]

Esto hace que el servidor muestre un código de estado 405 HTTP como respuesta, cuando alguien visita la URL mencionada en el comando. 

Si estás tratando errores persistentes, intenta excluir tales comandos en tu archivo de configuración. Puedes hacer esto al añadir un # al inicio de la línea que deseas excluir. 

Como alternativa, puedes cambiar la directiva de RewriteEngine ON a RewriteEngine OFF

7) Corrige los Permisos de Archivo

Otra razón por la que un servidor puede estar bloqueando el acceso a cierto contenido es porque los permisos de tu sitio están mal configurados. 

Por ejemplo, tu servidor puede permitir que un administrador use un método HTTP específico. Pero, cuando un visitante regular de tu sitio intenta la misma solicitud, en cambio, son bloqueados y se les entregará un código de error. 

La manera más rápida de verificar y administrar los permisos usualmente es a través de tu panel. Los usuarios de DreamHost, pueden utilizar el administrador de archivos integrado: 

  • Visita Administrar Sitios Web y haz clic en el botón Administrar
  • Abre el directorio de tu sitio web
  • Para ver los permisos, haz clic derecho en cualquier archivo de tu elección y utiliza CHMOD

Puede que simplemente descubras que uno de tus archivos importantes no tiene acceso público de lectura. 

Permisos de Archivo de Servidor Si estás administrando tu propio servidor privado o VPS, también vale la pena revisar la configuración del mismo. Tu servidor puede estar configurado para aceptar solo algunos métodos de solicitudes HTTP para tipos específicos de archivos. 

8) Depura Tu Código

Por último, la causa de tus errores 405 puede ser que algo está mal con el código de tu sitio web o aplicación. 

Para diagnosticar tales problemas, tendrás que seguir un proceso completo de depuración o debugging. Esto usualmente involucra crear una copia local de tu sitio web, y luego intentar recrear el error. Alternativamente, puedes utilizar un ambiente de desarrollo en línea.  

El proceso exacto que tendrás que seguir dependerá del CMS, scripts y lenguajes de programación que estés empleando. Si tu sitio funciona con WordPress y tienes experiencia con la línea de comando, podrías intentar usar WP-CLI

9) Restaura Tu Sitio Completo

Algunas veces en la vida, debes saber cuándo aceptar la derrota y, como decimos por aquí, “perder con honor”. 

Si has intentado otras soluciones y nada parece funcionar, puede que simplemente necesites restaurar tu sitio a la versión antes de que llegaran los errores. 

Cuando alojas cualquier sitio en DreamHost, siempre recomendamos que realices copias de seguridad periódicamente y que mantengas una copia de esos archivos de forma local. Pero, nosotros guardamos copias diarias de seguridad de cada uno de los sitios web que está alojado en nuestros servidores. 

Glosario de DreamHost

Cloud Hosting

Los proveedores de hosting tradicionales usan servidores físicos para almacenar los datos. Por otro lado, el 'cloud hosting' o el hosting en la nube usa varios servidores virtuales (y remotos) para lograr el mismo cometido.

Esto quiere decir que puedes restaurar tu sitio web a cómo estaba ayer con solo un par de clics. 

Para lograr esto, dirígete a Dominios Alojados, y haz clic en el botón Restaurar en la parte derecha. 

Luego, elige qué tan atrás en el tiempo quieres regresar, y selecciona la opción “Poner la copia de respaldo En Vivo”. Esto reemplazará tu sitio actual con el respaldo que elegiste. 

Restaurando un sitio web completoSi estás utilizando DreamPress, puedes completar el mismo proceso al visitar WordPress Administrado y haciendo clic en el botón Administrar al lado de tu dominio. 

A continuación, selecciona la pestaña ‘Copias de Seguridad’ y haz clic en ‘Restaurar’ en la versión archivada que deseas utilizar. Confirma la acción con ‘Iniciar Restauración’ y tu sitio pronto se verá tal cual como antes, sin el error 405. 

10) Revisa Tus Registros A

Un último consejo: asegúrate de que los registros A para tu dominio estén configurados correctamente.  

En algunos casos, puedes ver errores 405 si tus registros A están apuntando al servidor incorrecto. Por ejemplo, un servidor que está configurado para alojar tu sitio web, puede tener diferentes reglas que uno configurado para alojar una API (Interfaz de Programación de Aplicaciones).

Si tu dominio está registrado o administrado a través de DreamHost, puedes revisar tus registros A visitando la sección Administrar Sitios Web:

  • Haz clic en los 3 puntos
  • Selecciona la opción Configuración DNS del menú

Verificando los registros DNS en el panel de DreamHost

Extra: Detén los Errores 405 en Tus Llamadas de API 

Si tu sitio depende de una conexión con una API externa, puede que te encuentres con un error 405, ya que el servidor API está rehusando tu solicitud. Esto a menudo se reduce al formato incorrecto de solicitud. 

Para prevenir que suceda, asegúrate de incluir un encabezado “Content-Type” con tus solicitudes POST. Aquí hay algunos ejemplos: 

  • Java/PHP Content-Type: application/json
  • HTML – Content-Type: text/html; charset=UTF-8
  • XML – Content-Type: application/xml

También es una buena idea incluir un encabezado “Accept”:

  • Java/PHP Accept: application/json
  • HTML Accept: text/html
  • XML Accept: application/xml

También, asegúrate de revisar la documentación API. Puede que encuentres que el tipo de solicitud que estás realizando no es soportada por la API. Así mismo, los registros de tu sitio o aplicación pueden revelar el problema de fondo.

Cómo Evitar que el Error 405 Regrese

Hacer todos los pasos que hemos mencionado hasta ahora no es una tarea fácil. Pero, si estás dispuesto a hacer el esfuerzo, deberías poder eliminar todos los errores 405 que están presentes en tu sitio web o aplicación. 

¿Quieres asegurarte no tener que volver a pasar por esto? Aquí hay algunos consejos clave: 

  • Prueba tu sitio – Cuando instales un nuevo plugin o tema, asegúrate de realizar algunas pruebas. Si el cambio va a causar algún error 405, es útil saberlo desde temprano. 
  • Pon atención a la autenticación – Siempre está alerta sobre quién tiene acceso a qué recursos en tu servidor.
  • Ayúdale a tus usuarios a solucionar el problema – En la mayoría de los casos, los errores 405 son aislados a un usuario específico. Considera configurar páginas de error personalizadas que incluyan información sobre cómo tus usuarios pueden solucionar el error ellos mismos.

Con un poco de perseverancia, puedes conquistar el error 405 de una vez por todas, y proporcionarle una experiencia sin dificultades a tus visitantes.

Recibe Contenido Directamente en Tu Bandeja de Entrada

Suscríbete a nuestro blog y recibe contenido grandioso como este directamente en tu bandeja de entrada.

Photo of Jason Cosper
Sobre el Autor:

Jason es el Promotor de Productos de WordPress de DreamHost, ubicado en Bakersfield, CA. Actualmente está trabajando para mejorar nuestro producto DreamPress aún más. En su tiempo libre, le gusta acurrucarse en el sofá y ver películas de terror con su esposa Sarah y tres perros muy pequeños. Síguelo en Twitter.