Slovník pojmů

HTTP 401
Unauthorized

Stavový kód 401 znamená, že server požadavek odmítl, protože klient neprokázal platnou identitu. Stránka nebo API endpoint je chráněná a přístup vyžaduje přihlášení nebo předání tokenu.

4xx
třída chyb na straně klienta
WWW-Authenticate
povinná hlavička v každé 401 odpovědi
401 vs 403
autentizace vs. autorizace — klíčový rozdíl

Definice

Co je HTTP 401 Unauthorized

HTTP 401 je stavový kód z kategorie 4xx, který server vrátí, když klient neodeslal platné přihlašovací údaje pro přístup k chráněnému zdroji. Přes anglický název „Unauthorized“ jde ve skutečnosti o problém autentizace, ne autorizace. Jinými slovy: server neví, kdo jste, nikoliv že by vám přístup zakazoval.

Kód byl definován v RFC 7235 a platí pro veškerou HTTP komunikaci, tedy jak pro webové stránky chráněné přihlášením, tak pro REST API, která vyžadují token nebo API klíč.

Kdy server vrátí 401

  • Požadavek vůbec neobsahuje hlavičku Authorization
  • Token nebo heslo je neplatné, prošlé nebo nesprávně zakódované
  • Přihlašovací schéma neodpovídá tomu, co server očekává (např. Basic místo Bearer)

Kdy server vrátí 403 místo 401

  • Přihlášení proběhlo úspěšně, ale daný uživatel nemá oprávnění ke konkrétnímu zdroji
  • Server identitu klienta zná, ale přístup přesto odmítá
  • Žádné přihlášení by situaci nevyřešilo

Průběh

Jak 401 funguje — průběh autentizace

Komunikace mezi klientem a serverem při 401 odpovědi probíhá ve dvou kolech. RFC 7235 tento postup definuje jako výzvu a odpověď na výzvu.

01
Klient odešle požadavek
GET /admin — bez hlavičky Authorization nebo s neplatným tokenem
02
Server vrátí 401
Odpověď obsahuje hlavičku WWW-Authenticate s popisem očekávaného schématu
03
Klient přiloží přihlašovací údaje
Opakuje požadavek s hlavičkou Authorization obsahující platný token nebo zakódované heslo
04
Server potvrdí přístup
Vrátí 200 OK nebo jiný úspěšný kód, přístup je povolen
Poznámka: Pokud server při druhém pokusu opět vrátí 401 se stejnou výzvou, klient by měl zobrazit uživateli chybové hlášení. Opakování stejného požadavku s těmi samými neplatnými údaji smysl nemá.

Hlavička

Hlavička WWW-Authenticate

Každá platná 401 odpověď musí obsahovat hlavičku WWW-Authenticate. Server v ní sdělí, jaké autentizační schéma klient musí použít. Bez této hlavičky je 401 technicky nekorektní odpověď.

Basic

HTTP Basic Auth

Jméno a heslo jsou zakódovány v Base64 a odeslány v hlavičce. Schéma je jednoduché, ale nešifrované. Použitelné pouze přes HTTPS.

Příklad: WWW-Authenticate: Basic realm="Admin area"
Bearer

Bearer Token (OAuth 2.0)

Nejčastější schéma u moderních REST API. Klient odešle přístupový token vydaný autorizačním serverem. Token má nastavenou dobu platnosti.

Příklad: WWW-Authenticate: Bearer realm="api"

Kromě Basic a Bearer definuje IANA další schémata, například Digest, HOBA nebo AWS. Volba schématu závisí na bezpečnostních požadavcích konkrétní aplikace.

Srovnání

401 vs. 403 — v čem se liší

Záměna kódů 401 a 403 patří k nejčastějším chybám při implementaci API. Rozdíl je přesný: 401 znamená „nevím, kdo jsi“, 403 znamená „vím, kdo jsi, ale nepustím tě dál“.

Vlastnost HTTP 401 Unauthorized HTTP 403 Forbidden
Identita klienta Server klienta nezná nebo přihlášení selhalo Server klienta zná
Řešení pro klienta Přihlásit se nebo opravit token Přihlášení nepomůže, chybí oprávnění
Hlavička v odpovědi WWW-Authenticate je povinná Žádná speciální hlavička
Typická situace Přístup k API bez tokenu, nesprávné heslo Přihlášený uživatel otevírá admin sekci bez příslušné role
Tip: Server může záměrně vrátit 404 místo 403, pokud chce před neautorizovaným klientem skrýt samotnou existenci chráněného zdroje. Toto chování popisuje RFC 7231.

Diagnostika

Nejčastější příčiny chyby 401

Při ladění 401 odpovědí procházejte tyto příčiny v pořadí od nejběžnější k méně obvyklé.

01
Chybějící nebo prošlý token
Bearer token nebyl přiložen k požadavku, nebo mu vypršela platnost. Nejčastější příčina u REST API.
Řešení: obnovit token
02
Nesprávné přihlašovací schéma
Klient posílá Basic místo Bearer, nebo naopak. Server schéma odmítne, i když jsou samotné údaje správné.
Řešení: zkontrolovat typ schématu
03
Chybné zakódování Basic Auth
Base64 kódování řetězce jméno:heslo obsahuje chybu, obvykle špatné kódování znaků nebo přebytečné mezery.
Řešení: překódovat Base64
04
Konfigurace serveru nebo proxy
Nginx nebo Apache nejsou správně nakonfigurovány pro autentizaci. Proxy server odstraní hlavičku Authorization dříve, než ji zpracuje aplikace.
Řešení: prověřit konfiguraci
05
Session vypršela
Přihlašovací cookie nebo session token na serveru expiroval. Prohlížeč stále drží zastaralé údaje.
Řešení: znovu se přihlásit
06
Nesprávný realm nebo scope
Token byl vydán pro jiný scope nebo realm, než jaký chráněný endpoint vyžaduje.
Řešení: zkontrolovat scope tokenu

SEO

Dopad na SEO a indexaci

Pokud Googlebot narazí na stránku vracející 401, přístup odmítne a stránku neindexuje. Z pohledu indexace to znamená, že obsah chráněný 401 nebude ve výsledcích vyhledávání.

Záměrné použití 401

Chcete-li část webu skrýt před vyhledávači i uživateli bez přihlášení, 401 funguje jako správná volba. Googlebot za přihlašovací bránu nevstoupí a stránka se v indexu neobjeví.

  • Příklad: prémiový obsah přístupný po registraci
  • Příklad: interní dokumentace nebo admin rozhraní
Nezáměrné 401 — problém

Pokud stránka, která má být veřejně přístupná, vrací 401 omylem, Googlebot ji přeskočí. Stránka vypadne z indexu nebo se do něj nikdy nedostane, i kdyby měla jinak silný obsah.

  • Kontrola: Google Search Console, sekce Pokrytí
  • Rychlý test: nástroj Kontrola URL v GSC

Chyby 401 na veřejných URL je nutné opravit okamžitě. Google může stránku dočasně ponechat v indexu s dřívějšími metadaty, ale při příštím prohledání ji vyřadí, pokud 401 přetrvává.

Časté otázky

Otázky ke stavovému kódu 401

Kódy 4xx jsou chyby na straně klienta. Klient odeslal požadavek, který server nemůže splnit, protože klient nepředal platné přihlašovací údaje. Server sám funguje správně.
Prohlížeč reaguje na hlavičku WWW-Authenticate v odpovědi. Pokud je přítomna, prohlížeč automaticky zobrazí dialogové okno pro zadání jména a hesla, aby mohl požadavek zopakovat s platnou autorizací.
Na výkon samotný 401 vliv nemá. Problém nastane, pokud neautorizované požadavky přicházejí ve velkém objemu. Ty zbytečně zatěžují server ověřovací logikou. Řešením je rate limiting nebo blokování opakovaně selhávajících klientů.
Kód 407 Proxy Authentication Required funguje stejně jako 401, ale vztahuje se k autentizaci přes proxy server. Místo hlaviček WWW-Authenticate a Authorization používá Proxy-Authenticate a Proxy-Authorization.
Ne. Googlebot za přihlašovací bránu nevstoupí. Stránka vracející 401 nebude indexována. Pokud chcete obsah indexovat, musí být veřejně přístupný nebo Googlebot musí mít platné přihlašovací údaje skrze ověřený přístup.
Nejjednodušší způsob je použít příkazový řádek s nástrojem curl: zavolejte endpoint bez hlavičky Authorization a zkontrolujte, zda odpověď obsahuje stavový kód 401 a hlavičku WWW-Authenticate. V Google Search Console pak ověřte, jak danou URL vidí Googlebot.
Samuel Krištof — CEO PŘESAH.agency

Autor článku

Samuel Krištof

CEO & CMO · PŘESAH.agency

SEO Online marketing Správa PPC Sociální sítě Emailing

Marketingu se věnuji od roku 2017. Začínal jsem ve Fajn skupině, kde jsem budoval komunity na Facebooku a záhy přešel k placeným kampaním. Postupně jsem se dostal k SEO, automatizacím a celkové správě marketingu. Dnes působím jako CEO agentury PŘESAH a zároveň jako externí CMO ve společnosti Bohemian Estates.

Obsah článku je ověřen vůči oficiálním zdrojům MDN Web Docs a RFC 7235.

Problémy s technickým SEO?

Zkontrolujeme stavové kódy, indexaci i celkovou technickou kondici vašeho webu.

Nezávazná konzultace

Zdroje

Použité zdroje

Aktualizováno: 2026-04-14

Přejít nahoru