405

Method Not Allowed

Officiellement, Codes de sous-statut
La méthode utilisée pour la demande n'est pas autorisée

Spécification du code d'état HTTP 405

Le code d'état 405 Method Not Allowed indique que la méthode reçue dans la ligne de requête est connue du serveur d'origine mais n'est pas prise en charge par la ressource cible. Le serveur d'origine DOIT générer un champ d'en-tête Allow dans une réponse 405 Method Not Allowed contenant une liste des méthodes actuellement prises en charge par la ressource cible. Une réponse 405 Method Not Allowed peut être mise en cache par défaut, c'est-à-dire que, sauf indication contraire dans la définition de la méthode ou dans les contrôles explicites de la mise en cache, elle ne peut être mise en cache que par le serveur d'origine.

Source / Citation de : Le code d'état HTTP 405 Method Not Allowed est spécifié par la section 6.5.5 de RFC7231.

Comment lancer un code d'état 405 avec PHP ?

Pour lancer le code d'état HTTP 405 sur une page web, on peut utiliser la fonction PHP http_response_code. La syntaxe est la suivante : http_response_code(405) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Teste le code d'état HTTP 405

Pour pouvoir afficher le code de statut HTTP (dans ce cas 405 Method Not Allowed) et d'autres informations côté client, il faut ouvrir la console de développement avec F12. Ensuite, il faut naviguer vers l'onglet "Réseau". La page peut maintenant être ouverte, la page web (exemple index.php) doit être visible dans l'onglet réseau. Il faut la sélectionner et choisir ensuite le domaine Herder. L'utilisateur voit alors le résultat suivant :

Code d'état 405 Method Not Allowed
Aperçu
URL: https://http-statuscode.com/errorCodeExample.php?code=405
Statut: 405 Method Not Allowed
Ceux-ci: Network
Adresse IP: XX.XX.XX.XX
Code d'état 405 Method Not Allowed

Comment résoudre le problème du code d'état 405 ?

La solution au problème du code d'état HTTP 405 Method Not Allowed consiste à apporter les modifications nécessaires du côté du client ou du serveur. Je vais expliquer ci-dessous différentes approches qui peuvent aider à résoudre le problème:

  1. Vérifier les méthodes HTTP prises en charge : Le code d'état 405 Method Not Allowed se produit lorsque le client utilise une méthode HTTP qui n'est pas prise en charge par le serveur. Assure-toi que tu utilises la bonne méthode, par exemple GET, POST, PUT ou DELETE, en fonction de l'action que tu veux effectuer. Vérifie la documentation de l'API ou du serveur afin de déterminer les méthodes prises en charge pour la ressource en question.
  2. Vérifie l'URL : Il est possible que l'URL soit mal formatée ou invalide, ce qui entraîne une erreur 405 Method Not Allowed. Assure-toi que l'URL est correcte et qu'elle renvoie à la bonne ressource sur le serveur.
  3. Vérifie les droits d'accès : une erreur 405 Method Not Allowed peut se produire si le client ne dispose pas des autorisations nécessaires pour effectuer l'action demandée sur la ressource. Vérifie les mécanismes de contrôle d'accès sur le serveur et assure-toi que le client dispose des droits nécessaires.
  4. Vérifie la configuration du serveur : le serveur peut être configuré de manière à bloquer certaines méthodes HTTP pour certaines ressources. Vérifie la configuration du serveur pour t'assurer que la méthode souhaitée est autorisée pour la ressource en question. Si tu as accès à la configuration du serveur, tu peux l'adapter en conséquence.
  5. Vérifie les pare-feu et les proxies : il est possible que des pare-feu ou des proxies limitent le trafic HTTP et provoquent l'erreur 405 Method Not Allowed. Assure-toi que les pare-feu ou les proxies sont correctement configurés et autorisent les méthodes HTTP nécessaires à la communication.
  6. Mets à jour les logiciels utilisés : parfois, des versions obsolètes ou défectueuses de logiciels (comme les navigateurs web ou les clients API) peuvent provoquer des erreurs. Mets à jour le logiciel utilisé avec la dernière version stable et vérifie si le problème persiste.
  7. Consulte la documentation ou le support : si aucune des solutions mentionnées ci-dessus ne résout le problème, tu devrais consulter la documentation officielle du serveur ou de l'API. Tu y trouveras peut-être des informations spécifiques ou d'autres étapes de dépannage. Si nécessaire, tu peux également contacter le support technique du serveur ou de l'API pour obtenir une aide supplémentaire.

Note que la résolution de l'erreur 405 Method Not Allowed peut dépendre de l'environnement et du contexte spécifiques.

Comment créer une page d'erreur personnalisée pour le code d'état 405 ?

Créer sa propre page d'erreur 405 Method Not Allowed est relativement facile, aussi bien avec le serveur web "Apache" qu'avec le serveur web "NGINX".

Apache Webserver

Le serveur web "Apache" est l'un des serveurs web les plus répandus sur Internet. Pour créer sa propre page d'erreur 405 Method Not Allowed dans "Apache", il faut effectuer la modification suivante dans le fichier suivant.

File: .htaccess
ErrorDocument 405 /errors/405.html

NGINX Webserver

Tout comme le serveur web "Apache", "NGINX" est également très répandu sur Internet. Pour créer sa propre page d'erreur 405 Method Not Allowed dans "NGINX", il faut effectuer la modification suivante dans le fichier suivant.

File: sites-enabled/default
error_page 405 /405.html;
location = /405.html {
    root /usr/share/nginx/html;
    internal;
}

Compatibilité du navigateur avec le code d'état 405

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Les constantes dans les langages de programmation

HttpStatusCode.MethodNotAllowed
http.StatusMethodNotAllowed
Response::HTTP_METHOD_NOT_ALLOWED
httplib.METHOD_NOT_ALLOWED
http.client.METHOD_NOT_ALLOWED
http.HTTPStatus.METHOD_NOT_ALLOWED
:method_not_allowed

Codes de sous-statut du 405 Code de statut

Les codes de sous-statut sont purement techniques et ne devraient jamais être envoyés à l'utilisateur. Par exemple, si le code d'état 405.1 est lancé, il peut certes être enregistré, mais le code d'état 405 est envoyé à l'utilisateur.:
405.0 Method not allowed
HTTP IIS, Officieusement
Auteur: Tony Brüser
Auteur: Tony Brüser

Tony Brüser est un développeur web enthousiaste avec une prédilection pour les codes de statut HTTP.

LinkedInGitHub