Seznam HTTP hlaviček

Tento článek popisuje konkrétní záhlaví protokolu HTTP .
Přehled hlaviček naleznete v článku HTTP hlavičky .

Všechny nadpisy jsou rozděleny do čtyř hlavních skupin:

  1. General Headers ( ruská General Headers ) – používá se v požadavcích a odpovědích.
  2. Záhlaví požadavků ( rus. Záhlaví požadavků ) - používá se pouze v žádostech.
  3. Záhlaví odpovědí ( rus. Záhlaví odpovědí ) - používá se pouze v odpovědích.
  4. Záhlaví entit ( rusky. Záhlaví entit ) - doprovází každou entitu zprávy. Používá se v žádostech a odpovědích.

Právě v tomto pořadí se doporučuje odesílat hlavičky příjemci (nezáleží na tom programově, ale dává to pohodlí při ladění). Entity a tedy jejich hlavičky lze nalézt jak v požadavcích, tak v odpovědích (v tomto případě mohou být některá hlavička přítomna v odpovědi a chybět v požadavku, nebo naopak). Je třeba poznamenat, že některé hlavičky mohou patřit do několika skupin najednou (například Content-Disposition ).

Přehledová tabulka

V následující přehledové tabulce každý řádek dat odpovídá určitému nadpisu a některé sloupce jsou vyhrazeny pro jejich skupiny. Tabulka byla sestavena na základě analýzy polí záhlaví stanovených v RFC . Taková matice byla vytvořena pro lidi, kterým záleží na kompatibilitě a dynamice verzí. S vydáním aktualizací protokolů byly některé hlavičky přeneseny z jedné skupiny do druhé (přeškrtnuté „Ano“ označuje, kam dříve patřily). Některé nadpisy byly zcela vyloučeny a podle přeškrtnutého „Ano“ zjistíte, ve které skupině byly před vyloučením. Některé nadpisy mají několik přeškrtnutých "Ano" (například URI ) - takové nadpisy byly nejprve zavedeny v jedné skupině, poté přesunuty a později zcela zrušeny. Sloupec "Název" má také své vlastní kódování. Například zcela vyloučené nadpisy jsou přeškrtnuty a nadpisy navržené k vyloučení jsou označeny kurzívou.

Legenda

Krátké označení Výklad
Ano Záhlaví nyní patří do skupiny uvedené ve sloupci.
Ne Název nikdy nesouvisel s touto skupinou.
Ano Název používaný k označení této skupiny. Pokud je v řádku zelené „Ano“, pak byl převeden do jiné skupiny (přeškrtnuto - odkud byl převeden). Pokud řádek obsahuje pouze přeškrtnuté „Ano“ a obvyklé „Ne“, bylo záhlaví zcela odstraněno. Pokud bylo několik přeškrtnuto, byl titul převeden a poté byl zcela odstraněn.
Ano Mluví o pochybnostech. Pokud je na řádku pouze „Ne“, pak bude do protokolu zahrnuta pouze hlavička (už ji můžete použít). Pokud je na řádku také „Ano“, chtějí to převést do jiné skupiny, ale ještě o tom nebylo definitivně rozhodnuto.

Údaje

záhlaví GH Žádost Odpovědět Vzhled * Účel Příklad
RqH EH RSH EH
akceptovat Ne Ano Ne Ne Ne HTTP/1.0 Seznam platných formátů zdrojů. Přijmout: text/prostý
Přijmout znakovou sadu Ne Ano Ne Ne Ne HTTP/1.0 Seznam podporovaných kódování k poskytnutí uživateli. Accept-Charset: utf-8
Přijměte kódování Ne Ano Ne Ne Ne HTTP/1.0 Seznam podporovaných způsobů kódování obsahu přenášené entity. Accept-Encoding: < komprimovat | gzip | vyfouknout | sdch | identita>
Přijímací jazyk Ne Ano Ne Ne Ne HTTP/1.0 Seznam podporovaných přirozených jazyků. Přijímací jazyk: en
Přijmout rozsahy Ne Ne Ne Ano Ne HTTP/1.1 Seznam jednotek dosahu . Accept-Ranges: bytes
Stáří Ne Ne Ne Ano Ne HTTP/1.1 Počet sekund od změny zdroje.
dovolit Ne Ne Ne Ne Ano HTTP/1.0 Seznam podporovaných metod . Povolit: OPTIONS, GET, HEAD
Náhradníci Ne Ne Ne Ano Ne HTTP/1.1 Označení alternativních způsobů reprezentace zdroje.
Povolení Ne Ano Ne Ne Ne HTTP Auth Údaje pro autorizaci. Autorizace: Základní QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Cache-Control Ano Ne Ne Ne Ne HTTP/1.1 Základní direktivy pro správu cache . Cache-Control: no-cache
Cache-Control: no-store
Cache-Control: max-age=3600
Cache-Control: max-stale=0
Cache-Control: min-fresh=0
Cache-Control: no-transform
Cache- Control: only if-cached
Cache-Control: cache-extension
spojení Ano Ne Ne Ne Ne HTTP/1.1 Informace o připojení. Připojení: zavřít
obsahová základna Ne Ne Ne Ne Ano HTTP/1.1 Informace o trvalém umístění zdroje. Odstraněno v HTTP/1.1v2.
obsahově-dispozice Ne Ano Ano Ano Ano CDH Jak jsou entity distribuovány ve zprávě, když je odesláno více fragmentů. Obsah-Dispozice: formulář-data; name="MessageTitle"
Content-Disposition: form-data; name="AttachedFile1"; filename="fotka-1.jpg"
kódování obsahu Ne Ne Ano Ne Ano HTTP/1.0 Způsob, jak zakódovat obsah entity při přenosu.
Jazyk obsahu Ne Ne Ano Ne Ano HTTP/1.0 Jeden nebo více přirozených jazyků obsahu entity. Jazyk obsahu: en, ase, ru
délka obsahu Ne Ne Ano Ne Ano HTTP/1.0 Velikost obsahu entity v oktetech (která se v ruštině obvykle nazývá bajty). Délka obsahu: 1348
umístění obsahu Ne Ne Ano Ne Ano HTTP/1.1 Alternativní umístění obsahu entity.
Obsah-MD5 Ne Ne Ano Ne Ano MD5H Base64 MD5hash entity pro kontrolu integrity. Obsah-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==
rozsah obsahu Ne Ne Ano Ne Ano HTTP/1.1 Rozsahy bajtů předávané entity, pokud je vrácen fragment. Podrobnosti: Částečné GETy . Rozsah obsahu: bajty 88080384-160993791/160993792
typ obsahu Ne Ne Ano Ne Ano HTTP/1.0 Formát a způsob, jakým je entita reprezentována. Content-Type: text/html;charset=utf-8
Obsahová verze Ne Ne Ano Ne Ano HTTP/1.1 Informace o aktuální verzi entity.
datum Ano Ne Ne Ne Ne HTTP/1.0 Datum vygenerování odpovědi. Datum: Út, 15. listopadu 1994 08:12:31 GMT
Odvozený od Ne Ne Ano Ne Ano HTTP/1.1 Informace o aktuální verzi entity. [?]
Etag Ne Ne Ne Ano Ano HTTP/1.1 Značka (jedinečný identifikátor) verze entity použitá při ukládání do mezipaměti . Etag: "56d-9989200-1132c580"
Očekávat Ne Ano Ne Ne Ne HTTP/1.1v2 Označuje server, že klient od něj očekává další akci. Očekávejte: 100-pokračování
Platnost vyprší Ne Ne Ano Ne Ano HTTP/1.0 Očekávané datum ukončení platnosti účetní jednotky. Vyprší: Út, 31. ledna 2012 15:02:53 GMT
Z Ne Ano Ne Ne Ne HTTP/1.1 E -mailová adresa odpovědné osoby na straně klienta. From: [email protected]
Hostitel Ne Ano Ne Ne Ne HTTP/1.1 Název domény a hostitelský port požadovaného prostředku. Potřebné pro podporu virtuálního hostingu na serverech. Hostitel: en.wikipedia.org
Pokud Match Ne Ano Ne Ne Ne HTTP/1.1 Seznam značek verze entity. Proveďte metodu, pokud existují. If-Match: "737060cd8c284d8af7ad3082f209582d"
If-Modified-Since Ne Ano Ne Ne Ne HTTP/1.0 Datum . Proveďte metodu, pokud se entita od zadaného času změnila. If-Modified-Since: So, 29. října 1994 19:43:31 GMT
If-None-Match Ne Ano Ne Ne Ne HTTP/1.1 Seznam značek verze entity. Spusťte metodu, pokud žádná z nich neexistuje. If-None-Match: "737060cd8c284d8af7ad3082f209582d"
Pokud Range Ne Ano Ne Ne Ne HTTP/1.1 Seznam značek verze entity nebo datum pro konkrétní fragment entity. If-Range: "737060cd8c284d8af7ad3082f209582d"
If-Unmodified-Since Ne Ano Ne Ne Ne HTTP/1.1 Datum . Proveďte metodu, pokud se entita od zadaného data nezměnila. If-Unmodified-Since: So, 29. října 1994 19:43:31 GMT
Naposledy změněno Ne Ne Ano Ne Ano HTTP/1.0 Datum poslední úpravy entity.
Odkaz Ne Ne Ano Ne Ano HTTP/1.0 Ukazuje na zdroj, který je logicky propojen s entitou, podobně jako značka <LINK> v HTML .
umístění Ne Ne Ne Ano Ne HTTP/1.0 Identifikátor URI , na který by měl klient přejít, nebo identifikátor URI generovaného zdroje. Umístění: http://example.com/about.html#contacts  (odkaz není k dispozici)
Max vpřed Ne Ano Ne Ne Ne HTTP/1.1 Maximální povolený počet přechodů přes proxy . Maximální počet vpřed: 10
Verze MIME Ano Ne Ne Ne Ne MIM Verze protokolu MIME , ze které byla zpráva vygenerována.
pragma Ano Ne Ne Ne Ne HTTP/1.0 Speciální možnosti pro provedení operace. Pragma: no-cache
Proxy Authenticate Ne Ne Ne Ano Ne HTTP Auth Nastavení ověřování na serveru proxy.
Autorizace proxy Ne Ano Ne Ne Ne HTTP Auth Informace pro autorizaci na proxy serveru. Proxy-autorizace: Základní QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Veřejnost Ne Ne Ne Ano Ne HTTP/1.1 Seznam dostupných metod je podobný jako Povolit , ale pro celý server.
Rozsah Ne Ano Ne Ne Ne HTTP/1.1 Rozsahy bajtů pro vyžádání fragmentů prostředků. Podrobnosti: Částečné GETy . Rozsah: bajtů=50000-99999,250000-399999,500000-
Referent Ne Ano Ne Ne Ne HTTP/1.0 Identifikátor URI zdroje, po kterém klient provedl aktuální požadavek. Referent: http://en.wikipedia.org/wiki/Main_Page
Opakovat-po Ne Ne Ne Ano Ne HTTP/1.0 Datum nebo čas v sekundách, po kterém lze požadavek opakovat.
server Ne Ne Ne Ano Ne HTTP/1.0 Seznam názvů a verzí webového serveru a jeho součástí s komentáři. U proxy serverů pole Přes . Server: Apache/2.2.17 (Win32) PHP/5.3.5
Titul Ne Ne Ano Ne Ano HTTP/1.0 Název entity.
TE Ne Ano Ne Ne Ne HTTP/1.1v2 Seznam rozšířených metod kódování přenosu. TE: přívěsy, vypusťte
Upoutávka Ano Ne Ne Ne Ne HTTP/1.1v2 Seznam polí souvisejících s kódováním zprávy při přenosu.
Kódování přenosu Ano Ne Ne Ne Ne HTTP/1.1 Seznam kódování, která byla použita na zprávu pro přenos. Transfer-Encoding: chunked
Vylepšit Ano Ne Ne Ne Ne HTTP/1.1 Seznam protokolů nabízených klientem. Server specifikuje jeden protokol. Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
URI Ne Ne Ano Ne Ano HTTP/1.0 Seznam URI. V HTTP/1.1 nahrazeno umístěním , umístěním obsahu , Vary a odkazem .
Uživatelský agent Ne Ano Ne Ne Ne HTTP/1.0 Seznam jmen a verzí klienta a jeho komponent s komentáři. User-Agent: Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Lišit se Ne Ne Ne Ano Ne HTTP/1.1 Seznam polí s popisem zdroje z požadavku, která byla vzata v úvahu. Vary: Accept-Encoding
Přes Ano Ne Ne Ne Ne HTTP/1.1 Seznam verzí protokolů, jmen a verzí proxy serverů , přes které zpráva prošla. Přes: 1.0 fred, 1.1 nowhere.com (Apache/1.1)
Varování Ano Ne Ne Ano Ne HTTP/1.1 Kód, agent, zpráva a datum v případě nouze. Varování: 199 Různé varování
WWW-ověření Ne Ne Ne Ano Ne HTTP Auth Možnosti autentizace pro provedení metody proti zadanému prostředku.

* Hodnoty ve sloupci "Vzhled":

Hlavní názvy

General Headers jsou hlavní hlavičky pro požadavky klientů a odpovědi serveru .  Většina z nich je povinná.

Záhlaví požadavků

Hlavičky požadavků se používají pouze v požadavcích klientů . 

Referer

Úplné nebo relativní URI zdroje, ze kterého klient provedl aktuální požadavek. Pokud je zadán relativní, pak je plný určen požadovaným URI. Klienti NESMÍ zahrnout ukazatel fragmentu (část URI za znakem libry " # ") do hodnoty Referer . Také nemůžete zahrnout odkazy na zdroje, které nemají vlastní URI (například zadání adresy z klávesnice).

Příklady:

User Agent

Určuje klientský software a jeho vlastnosti. Podobný je Server pro servery a Via pro proxy.

Záhlaví odpovědí

Hlavičky odpovědí jsou zahrnuty pouze v odpovědích serveru . 

Povolit

Seznam podporovaných metod pro celý server nebo konkrétní zdroj. Odesláno serverem spolu se stavy 405 a 501 a jako odpověď na metodu OPTIONS .

Příklad:Allow: GET, HEAD, OPTIONS

Záhlaví entit

Záhlaví  entit jsou záhlaví , která doprovázejí každou entitu v požadavcích klienta i v odpovědích serveru. Nicméně mít nějaké je zbytečné v záhlaví požadavků (jako Expires ). Hlavičky entit jsou rozděleny do samostatné třídy , aby nedošlo k záměně s hlavičkami požadavků nebo hlavičkami odpovědí při přenosu více obsahu ( multipart/* ). Hlavičky požadavku a odpovědi, stejně jako hlavní hlavičky, popisují celou zprávu jako celek a jsou umístěny pouze v počátečním bloku hlaviček, zatímco hlavičky entit charakterizují obsah každé části zvlášť, umístěné bezprostředně před jejím tělem.

Content-Language

Určuje jeden nebo více přirozených jazyků obsahu, pro jehož rodilé mluvčí je určen. Jazyky jsou uvedeny oddělené čárkami, na pořadí nezáleží. Pokud je tento nadpis vynechán, předpokládá se, že obsah je určen lidem, kteří rozumí jakémukoli jazyku (nebo na jazyku vůbec nezáleží). Je přitom možné, že tam člověk nenajde informace v jazyce, kterému rozumí.

Všimněte si, že toto pole by nemělo zahrnovat všechny jazyky použité v dokumentu, pouze ty, o kterých si myslíte, že jim koncový uživatel rozumí. Pokud se například jedná o stránku anglické učebnice pro rusky mluvící publikum, měla by být uvedena pouze ruština, protože pro anglicky mluvící lidi není potřeba. A pokud se jedná o stránku s chybovou zprávou ve dvou jazycích, musíte zadat oba.

RFC říká, že jazyk obsahu lze určit pro jakýkoli typ média, nejen pro text. Pokud se například jedná o video, kde lidé mluví anglicky, ve kterém je na straně okno s překladem znakového jazyka v Amslenu a dole je překlad s titulky v ruštině, pak by záhlaví Content-Language mělo mají hodnotu " en, ase, ru". Zároveň, pokud se jedná o video, kde postavy mluví japonsky a existuje hlasový překlad v ruštině, měla by být uvedena pouze ruština, protože pro Japonce bude s největší pravděpodobností obtížné slyšet jejich rodnou řeč.

Hlavička Content-Language je popsána nejen v hlavních specifikacích pro protokol HTTP, ale také v samostatném RFC 3282 „Záhlaví jazyka obsahu“. Všechny názvy jazyků jsou registrovány u IANA. Odkaz na jejich registr najdete na konci tohoto článku.

Viz také

Odkazy

Hlavní HTTP RFC (v sestupném pořadí podle data vydání):

Materiály o přirozených jazycích: