401

Unauthorized

Ufficiale Codici di sotto-stato
La richiesta non è stata autorizzata

Specifica del codice di stato HTTP 401

Il codice di stato 401 Unauthorized indica che la richiesta non è stata applicata perché mancano credenziali di autenticazione valide per la risorsa di destinazione. Il server che genera una risposta 401 Unauthorized DEVE inviare un campo di intestazione WWW-Authenticate contenente almeno una sfida applicabile alla risorsa di destinazione. Se la richiesta includeva credenziali di autenticazione, la risposta 401 Unauthorized indica che l'autorizzazione è stata rifiutata per tali credenziali. L'interprete PUÒ ripetere la richiesta con un campo di intestazione Authorization nuovo o sostituito. Se la risposta 401 Unauthorized contiene la stessa sfida della risposta precedente e l'interprete ha già tentato l'autenticazione almeno una volta, l'interprete DEVE presentare all'utente la rappresentazione allegata, poiché di solito contiene informazioni diagnostiche rilevanti.

Fonte / Citazione da: Il codice di stato HTTP 401 Unauthorized è specificato dalla sezione 3.1 di RFC7235.

Come lanciare un codice di stato 401 con PHP?

Per lanciare il codice di stato HTTP 401 su una pagina web, si può usare la funzione PHP http_response_code. La sintassi è la seguente: http_response_code(401) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test del codice di stato HTTP 401

Per poter visualizzare il codice di stato HTTP (in questo caso 401 Unauthorized) e altre informazioni sul lato client, è necessario aprire la console di sviluppo con F12. Quindi navigare nella scheda "Rete". Ora la pagina può essere aperta, il sito web (ad esempio index.php) dovrebbe essere visibile nella scheda Rete. Questo deve essere selezionato e poi deve essere selezionata la sezione Herder. L'utente vedrà quindi il seguente risultato:

Codice di stato 401 Unauthorized
Panoramica
URL: https://http-statuscode.com/errorCodeExample.php?code=401
Stato: 401 Unauthorized
Quelle: Network
Indirizzo IP: XX.XX.XX.XX
Codice di stato 401 Unauthorized

Come creare la propria pagina di errore per il codice di stato 401

Creare la propria pagina di errore 401 Unauthorized è relativamente facile sia con il server web "Apache" che con "NGINX".

Apache Webserver

Il server web "Apache" è uno dei server web più comuni su Internet. Per creare la propria pagina di errore 401 Unauthorized in "Apache", è necessario apportare la seguente modifica al file seguente.

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

NGINX Webserver

Simile al server web "Apache", anche "NGINX" è ampiamente utilizzato su Internet. Per creare la propria pagina di errore 401 Unauthorized in "NGINX", è necessario apportare la seguente modifica al file seguente.

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

Compatibilità con i browser del codice di stato 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

Costanti nei linguaggi di programmazione

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

Codici di stato secondari del codice di stato 401

I codici di stato secondari sono puramente tecnici e non devono mai essere inviati all'utente. Ad esempio, se viene lanciato il codice di stato 401.1, questo può essere registrato, ma il codice di stato 401 sarà inviato all'utente.:
401.1 Logon failed
HTTP IIS, Non ufficiale
401.2 Logon failed due to server configuration
HTTP IIS, Non ufficiale
401.3 Unauthorized due to ACL on resource
HTTP IIS, Non ufficiale
401.4 Authorization failed by filter
HTTP IIS, Non ufficiale
401.5 Authorization failed by ISAPI/CGI application
HTTP IIS, Non ufficiale
401.501 Access Denied: Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached.
HTTP IIS, Non ufficiale
401.502 Forbidden: Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached.
HTTP IIS, Non ufficiale
401.503 Access Denied: the IP address is included in the Deny list of IP Restriction
HTTP IIS, Non ufficiale
401.504 Access Denied: the host name is included in the Deny list of IP Restriction
HTTP IIS, Non ufficiale

Articoli del blog

Protezione dagli attacchi attraverso il file xmlrpc.php di WordPress

Sezione 1: Cos'è il file xmlrpc.php e dove si trova? Il file xmlrpc.php è un componente importante di WordPress, uno dei principali sistemi di gestione dei contenuti (CMS) per la creazione e la ges...

Autore: Tony Brüser
Autore: Tony Brüser

Tony Brüser è un entusiasta sviluppatore web con una predilezione per i codici di stato HTTP.

LinkedInGitHub