401

Unauthorized

Officiellement, Codes de sous-statut
La demande n'était pas autorisée

Spécification du code d'état HTTP 401

Le code d'état 401 Unauthorized indique que la demande n'a pas été appliquée parce qu'il manque des informations d'authentification valides pour la ressource cible. Le serveur qui génère une réponse 401 Unauthorized doit envoyer un champ d'en-tête WWW-Authenticate contenant au moins un défi applicable à la ressource cible. Si la demande contenait des informations d'authentification, la réponse 401 Unauthorized indique que l'autorisation a été refusée pour ces informations. L'agent utilisateur PEUT répéter la demande avec un champ d'en-tête Authorization nouveau ou remplacé. Si la réponse 401 Unauthorized contient le même défi que la réponse précédente et que l'agent utilisateur a déjà tenté l'authentification au moins une fois, l'agent utilisateur DEVRAIT présenter la représentation jointe à l'utilisateur, car elle contient généralement des informations de diagnostic pertinentes.

Source / Citation de : Le code d'état HTTP 401 Unauthorized est spécifié par la section 3.1 de RFC7235.

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

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

Teste le code d'état HTTP 401

Pour pouvoir afficher le code de statut HTTP (dans ce cas 401 Unauthorized) 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 401 Unauthorized
Aperçu
URL: https://http-statuscode.com/errorCodeExample.php?code=401
Statut: 401 Unauthorized
Ceux-ci: Network
Adresse IP: XX.XX.XX.XX
Code d'état 401 Unauthorized

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

Créer sa propre page d'erreur 401 Unauthorized 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 401 Unauthorized dans "Apache", il faut effectuer la modification suivante dans le fichier suivant.

File: .htaccess
ErrorDocument 401 /errors/401.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 401 Unauthorized dans "NGINX", il faut effectuer la modification suivante dans le fichier suivant.

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

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

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

Les constantes dans les langages de programmation

HttpStatusCode.Unauthorized
http.StatusUnauthorized
Response::HTTP_UNAUTHORIZED
httplib.UNAUTHORIZED
http.client.UNAUTHORIZED
http.HTTPStatus.UNAUTHORIZED
:unauthorized

Codes de sous-statut du 401 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 401.1 est lancé, il peut certes être enregistré, mais le code d'état 401 est envoyé à l'utilisateur.:
401.1 Logon failed
HTTP IIS, Officieusement
401.2 Logon failed due to server configuration
HTTP IIS, Officieusement
401.3 Unauthorized due to ACL on resource
HTTP IIS, Officieusement
401.4 Authorization failed by filter
HTTP IIS, Officieusement
401.5 Authorization failed by ISAPI/CGI application
HTTP IIS, Officieusement
401.501 Access Denied: Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached.
HTTP IIS, Officieusement
401.502 Forbidden: Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached.
HTTP IIS, Officieusement
401.503 Access Denied: the IP address is included in the Deny list of IP Restriction
HTTP IIS, Officieusement
401.504 Access Denied: the host name is included in the Deny list of IP Restriction
HTTP IIS, Officieusement

Article de blog

Protection contre les attaques par le fichier xmlrpc.php dans WordPress

Section 1 : Qu'est-ce que le fichier xmlrpc.php et où se trouve-t-il ? Le fichier xmlrpc.php est un composant important de WordPress, l'un des principaux systèmes de gestion de contenu (CMS) au mon...

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