HTTP 401 Unauthorized
Codice di stato 401 · Classe 4xx
Messaggio ufficiale (come appare sullo schermo): Unauthorized
Cercato anche come: error 401, HTTP 401, 401 unauthorized, 401 error
Che cosa significa
Il 401 Unauthorized significa che il server richiede l'autenticazione e le credenziali non sono state inviate, oppure sono non valide o scadute. I browser possono mostrare una finestra di accesso; le API lo restituiscono quando il token o la chiave API manca o è errata.
Si applica a: Tutti i browser, API REST, nginx, Apache, IIS
Come risolvere HTTP 401 Unauthorized
- Esci dal sito, accedi di nuovo e ricarica la pagina
- Cancella i cookie del sito per eliminare una sessione scaduta
- Controlla l'URL: il link potrebbe puntare a un'area protetta a cui non hai effettuato l'accesso
- Client API: verifica che l'intestazione 'Authorization' venga davvero inviata (controllala negli strumenti per sviluppatori, scheda Rete, oppure con 'curl -v')
- Client API: aggiorna o rigenera token e chiavi API scaduti e controlla lo sfasamento dell'orologio se i JWT vengono rifiutati
- Leggi l'intestazione di risposta 'WWW-Authenticate': indica lo schema richiesto (Basic, Bearer, Digest)
- Se gestisci il sito: verifica che i reverse proxy inoltrino l'intestazione Authorization al backend e che le richieste CORS preflight non vengano a loro volta autenticate
Perché succede
La RFC 9110 definisce il 401 come credenziali di autenticazione mancanti o non valide per la risorsa richiesta. Sessioni scadute, intestazioni perse, chiavi errate e sfasamento dell'orologio nella validazione dei token causano la maggior parte dei casi.
Domande frequenti
Qual è la differenza tra 401 e 403?
Il 401 significa «non sappiamo chi sei, autenticati». Il 403 significa «sappiamo chi sei e non hai il permesso».
Perché ottengo un 401 anche con la chiave API corretta?
L'intestazione potrebbe non arrivare al server (rimossa da un proxy o da un reindirizzamento), oppure la chiave appartiene a un altro ambiente o ha ambiti (scope) errati.
Errori correlati
Fonte: IANA HTTP Status Code Registry · soluzioni scritte e verificate dalla redazione (vedi la nostra politica editoriale)
Ultimo aggiornamento: