Seznam polí záhlaví HTTP - List of HTTP header fields
HTTP |
---|
Vyžádejte si metody |
Pole záhlaví |
Stavové kódy |
Bezpečnostní metody řízení přístupu |
Zranitelnosti zabezpečení |
Pole záhlaví HTTP jsou komponenty hlavičkové sekce žádost a Odezva zprávy v Hypertext Transfer Protocol (HTTP). Definují provozní parametry transakce HTTP.
Obecný formát
Pole záhlaví se přenášejí po řádku požadavku (v případě zprávy HTTP požadavku) nebo řádku odpovědi (v případě zprávy HTTP odpovědi), což je první řádek zprávy. Pole záhlaví jsou dvojice klíč – hodnota oddělená dvojtečkou v čistém textu tětiva formát ukončený a návrat vozíku (ČR) a posuv řádku (LF) posloupnost znaků. Konec sekce záhlaví je označen prázdným řádkem pole, což vede k přenosu dvou po sobě jdoucích párů CR-LF. V minulosti mohly být dlouhé čáry přeloženy do více řádků; pokračovací řádky jsou označeny přítomností mezery (SP) nebo vodorovné záložky (HT) jako prvního znaku na dalším řádku. Toto skládání je nyní zastaralé.[1]
Názvy polí
Základní sada polí je standardizována Pracovní skupina pro internetové inženýrství (IETF) v RFC 7230, 7231, 7232, 7233, 7234 a 7235. trvalý registr polí záhlaví a úložiště prozatímních registrací jsou udržovány IANA. Každá aplikace může definovat další názvy polí a přípustné hodnoty.
Názvy polí záhlaví nerozlišují velká a malá písmena.[2] To je na rozdíl od názvů metod HTTP (GET, POST atd.), Které rozlišují velká a malá písmena[3][4].
HTTP / 2 zavádí určitá omezení pro konkrétní pole záhlaví (viz níže).
Nestandardní pole záhlaví byla konvenčně označena předponou názvu pole X-
ale tato konvence byla v červnu 2012 zastaralá kvůli nepříjemnostem, které způsobila, když se nestandardní pole stala standardem.[5] Dřívější omezení používání Downgraded-
byl zrušen v březnu 2013.[6]
Hodnoty pole
Několik polí může obsahovat komentáře (tj. V polích User-Agent, Server, Via), které lze pomocí softwaru ignorovat.[7]
Mnoho polních hodnot může obsahovat kvalitu (q) dvojice klíč – hodnota oddělená znaménko rovná se, s uvedením hmotnosti pro použití v vyjednávání obsahu.[8] Prohlížeč může například označit, že přijímá informace v němčině nebo angličtině, přičemž preferencí němčiny je nastavení q hodnota pro de
vyšší než u en
, jak následuje:
Přijmout jazyk: de; q = 1,0, en; q = 0,5
Omezení velikosti
Standard neukládá žádná omezení velikosti každého názvu pole nebo hodnoty pole záhlaví nebo počtu polí. Většina serverů, klientů a softwaru proxy však z praktických a bezpečnostních důvodů ukládá určitá omezení. Například server Apache 2.3 ve výchozím nastavení omezuje velikost každého pole na 8 190 bajtů a v jednom požadavku může být maximálně 100 polí záhlaví.[9]
Vyžádejte si pole
Standardní pole žádosti
název | Popis | Příklad | Postavení | Standard |
---|---|---|---|---|
CÍL | Přijatelné manipulace instance pro požadavek.[10] | A-IM: feed | Trvalý | RFC 3229 |
Akceptovat | Typy médií to je / jsou přijatelné pro odpověď. Vidět Vyjednávání obsahu. | Přijmout: text / html | Trvalý | RFC 2616, 7231 |
Přijmout-Charset | Sady znaků, které jsou přijatelné. | Přijmout-Charset: utf-8 | Trvalý | RFC 2616 |
Přijmout-datum a čas | Přijatelná verze v čase. | Přijmout-Datetime: Čt, 31. května 2007 20:35:00 GMT | Prozatímní | RFC 7089 |
Přijmout-kódování | Seznam přijatelných kódování. Vidět HTTP komprese. | Accept-Encoding: gzip, deflate | Trvalý | RFC 2616, 7231 |
Přijmout jazyk | Seznam přijatelných lidských jazyků pro odpověď. Vidět Vyjednávání obsahu. | Přijmout jazyk: en-US | Trvalý | RFC 2616, 7231 |
Metoda Access-Control-Request, Záhlaví Access-Control-Request[11] | Iniciuje žádost o sdílení zdrojů mezi zdroji s Původ (níže). | Metoda Access-Control-Request: GET | Permanentní: standardní | |
Oprávnění | Ověřovací pověření pro Ověřování HTTP. | Autorizace: Základní QWxhZGRpbjpvcGVuIHNlc2FtZQ == | Trvalý | |
Cache-Control | Používá se k určení směrnic, které musí dodržovat všechny mechanismy ukládání do mezipaměti v řetězci požadavků a odpovědí. | Cache-Control: bez mezipaměti | Trvalý | |
Spojení | Možnosti ovládání pro aktuální připojení a seznam polí požadavku hop-by-hop.[12] Nesmí být použit s HTTP / 2.[13] | Připojení: keep-alive | Trvalý | |
Kódování obsahu | Typ kódování použitý u dat. Vidět HTTP komprese. | Kódování obsahu: gzip | Trvalý | |
Délka obsahu | Délka těla žádosti v oktety (8bitové bajty). | Délka obsahu: 348 | Trvalý | |
Obsah-MD5 | A Base64 -kódovaný binární MD5 součet obsahu orgánu žádosti. | Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ == | Zastaralý[14] | |
Typ obsahu | The Typ média těla požadavku (používá se s požadavky POST a PUT). | Typ obsahu: application / x-www-form-urlencoded | Trvalý | |
Cookie | An HTTP cookie dříve odesláno serverem s Set-cookie (níže). | Cookie: $ Verze = 1; Kůže = nový; | Permanentní: standardní | |
datum | Datum a čas, kdy byla zpráva vytvořena (ve formátu „HTTP-date“, jak je definováno v RFC 7231 Formáty data a času ). | Datum: Út, 15. listopadu 1994 08:12:31 GMT | Trvalý | |
Očekávat | Označuje, že klient požaduje určité chování serveru. | Očekávejte: 100-pokračovat | Trvalý | |
Předán | Zveřejněte původní informace o klientovi, který se připojuje k webovému serveru prostřednictvím HTTP proxy.[15] | Přeposláno: for = 192.0.2.60; proto = http; by = 203.0.113.43 Přeposláno: pro = 192.0.2.43, pro = 198.51.100.17 | Trvalý | |
Z | E-mailová adresa uživatele, který žádost podává. | Od: už[email protected] | Trvalý | |
Hostitel | Název domény serveru (pro virtuální hosting ) a TCP port číslo, na kterém server naslouchá. The přístav číslo může být vynecháno, pokud je port standardním portem pro požadovanou službu. Povinné od HTTP / 1.1.[16]Pokud je požadavek generován přímo v HTTP / 2, neměl by být používán.[17] | Hostitel: en.wikipedia.org:8080
| Trvalý | |
Nastavení HTTP2 | Požadavek, který upgraduje z HTTP / 1.1 na HTTP / 2, MUSÍ obsahovat přesně jeden Nastavení HTTP2 pole záhlaví. The Nastavení HTTP2 pole záhlaví je pole záhlaví specifické pro připojení, které obsahuje parametry, které řídí připojení HTTP / 2, poskytované v očekávání, že server přijme požadavek na upgrade.[18][19] | Nastavení HTTP2: token64 | Permanentní: standardní | |
If-Match | Akce proveďte pouze v případě, že se entita dodaná klientem shoduje se stejnou entitou na serveru. Jedná se hlavně o metody, jako je PUT, pouze k aktualizaci zdroje, pokud nebyl změněn od poslední aktualizace uživatelem. | If-Match: „737060cd8c284d8af7ad3082f209582d“ | Trvalý | |
If-Modified-Since | Umožňuje a 304 Nezměněno se vrátí, pokud se obsah nezmění. | If-Modified-since: so, 29. října 1994 19:43:31 GMT | Trvalý | |
If-None-Match | Umožňuje a 304 Nezměněno vrátit, pokud se obsah nezmění, viz HTTP ETag. | Pokud-žádný-shoda: "737060cd8c284d8af7ad3082f209582d" | Trvalý | |
If-Range | Pokud se entita nezmění, pošlete mi část (části), která mi chybí; jinak mi pošlete celou novou entitu. | Rozsah-li: "737060cd8c284d8af7ad3082f209582d" | Trvalý | |
If-Unmodified-Since | Odpověď odešlete pouze v případě, že entita nebyla od určitého času změněna. | If-Unmodified-since: so, 29. října 1994 19:43:31 GMT | Trvalý | |
Max vpřed | Omezte počet, kolikrát lze zprávu přeposlat přes proxy nebo brány. | Max. Dopředu: 10 | Trvalý | |
Původ[11] | Iniciuje žádost o sdílení zdrojů mezi zdroji (požádá server o Řízení přístupu-* pole odpovědi). | Původ: http://www.example-social-network.com | Permanentní: standardní | |
Pragma | Pole specifická pro implementaci, která mohou mít různé účinky kdekoli v řetězci požadavků a odpovědí. | Pragma: bez mezipaměti | Trvalý | |
Proxy-Authorization | Autorizační pověření pro připojení k proxy serveru. | Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ == | Trvalý | |
Rozsah | Vyžádejte si pouze část entity. Bajty jsou očíslovány od 0. Viz Byte slouží. | Rozsah: bajty = 500–999 | Trvalý | |
Referer [sic ] | Toto je adresa předchozí webové stránky, ze které byl následován odkaz na aktuálně požadovanou stránku. (Slovo „referrer“ bylo v RFC i ve většině implementací chybně napsáno do té míry, že se stalo standardním používáním a je považováno za správnou terminologii.) | Referer: http://en.wikipedia.org/wiki/Main_Page | Trvalý | |
TE | Kódování přenosu, které je uživatelský agent ochoten přijmout: lze použít stejné hodnoty jako pro pole záhlaví odpovědi Transfer-Encoding, plus hodnotu „přívěsy“ (související s „kousek "metoda přenosu), aby upozornila server, který očekává, že obdrží další pole v upoutávce po posledním bloku s nulovou velikostí. Pouze | TE: přívěsy, vyfouknout | Trvalý | |
Upoutávka | Hodnota obecného pole Trailer označuje, že daná sada polí záhlaví je přítomna v přívěsu zprávy kódované blokové přenosové kódování. | Trailer: Max-Forwards | Trvalý | |
Transfer-Encoding | Forma kódování použitá k bezpečnému přenosu entity na uživatele. Aktuálně definované metody jsou: kousek, komprimovat, vyfouknout, gzip, identita. Nesmí být použit s HTTP / 2.[13] | Kódování přenosu: blokováno | Trvalý | |
Uživatel-agent | The řetězec agenta uživatele uživatelského agenta. | Uživatelský agent: Mozilla / 5.0 (X11; Linux x86_64; rv: 12.0) Gecko / 20100101 Firefox / 12.0 | Trvalý | |
Vylepšit | Požádejte server o upgrade na jiný protokol. Nesmí být použito v HTTP / 2.[13] | Upgrade: h2c, HTTPS / 1.3, IRC / 6.9, RTA / x11, websocket | Trvalý | |
Přes | Informuje server proxy, kterými byl požadavek odeslán. | Přes: 1,0 fred, 1,1 example.com (Apache / 1.1) | Trvalý | |
Varování | Obecné varování před možnými problémy s tělem entity. | Varování: 199 Různé varování | Trvalý |
Společná nestandardní pole požadavků
Název pole | Popis | Příklad |
---|---|---|
Upgrade-nezabezpečené-žádosti[20] | Říká serveru, který (pravděpodobně uprostřed migrace HTTP -> HTTPS) hostí smíšený obsah, který by klient upřednostňoval přesměrování na HTTPS, a dokáže zpracovat Content-Security-Policy: upgrade-insecure-requests Nesmí být použit s HTTP / 2[13] | Upgrade-nezabezpečené požadavky: 1 |
Požadováno X | Používá se hlavně k identifikaci Ajax požadavky (většina Rámce JavaScriptu pošlete toto pole s hodnotou XMLHttpRequest ); také identifikuje aplikace pro Android pomocí WebView[21] | X-Requested-With: XMLHttpRequest |
DNT[22] | Žádá webovou aplikaci, aby deaktivovala jejich sledování uživatele. Toto je verze Mozilly verze pole záhlaví X-Do-Not-Track (od Firefox 4.0 Beta 11). Safari a IE9 také mít podporu pro toto pole.[23] 7. března 2011 byl IETF předložen návrh návrhu.[24] The W3C Pracovní skupina pro ochranu sledování připravuje specifikaci.[25] | DNT: 1 (Nesledovat povoleno)
|
X-Forwarded-For[26] | A de facto Standard pro identifikaci původní IP adresy klienta připojujícího se k webovému serveru prostřednictvím HTTP proxy nebo nástroje pro vyrovnávání zatížení. Nahrazen Předán záhlaví. | X-Forwarded-For: client1, proxy1, proxy2
|
X-Forwarded-Host[27] | A de facto Standard pro identifikaci původního hostitele požadovaného klientem v Hostitel Záhlaví požadavku HTTP, protože název hostitele a / nebo port reverzního proxy serveru (nástroj pro vyrovnávání zatížení) se může lišit od původního serveru zpracovávajícího požadavek. Nahrazen Předán záhlaví. | X-Forwarded-Host: en.wikipedia.org:8080
|
X-Forwarded-Proto[28] | A de facto Standard pro identifikaci původního protokolu požadavku HTTP, protože reverzní server proxy (nebo nástroj pro vyrovnávání zatížení) může komunikovat s webovým serverem pomocí protokolu HTTP, i když je požadavek na reverzní server proxy HTTPS. Alternativní formu záhlaví (X-ProxyUser-Ip) používají klienti Google, kteří mluví se servery Google. Nahrazen Předán záhlaví. | X-Forwarded-Proto: https |
Front-End-Https[29] | Nestandardní pole záhlaví používané aplikacemi Microsoft a nástroji pro vyrovnávání zatížení | Front-End-Https: zapnuto |
Přepsání metody X-Http[30] | Vyžaduje webovou aplikaci, aby přepsala metodu uvedenou v požadavku (obvykle POST) metodou uvedenou v poli záhlaví (obvykle PUT nebo DELETE). To lze použít, když uživatelský agent nebo brána firewall zabrání přímému odeslání metod PUT nebo DELETE (všimněte si, že se jedná buď o chybu v softwarové komponentě, kterou je třeba opravit, nebo o úmyslnou konfiguraci, v takovém případě může být obejití špatná věc). | Přepsání metody X-HTTP: DELETE |
X-ATT-DeviceId[31] | Umožňuje snadnější analýzu MakeModel / Firmware, který se obvykle nachází v řetězci User-Agent zařízení AT&T | X-Att-Deviceid: GT-P7320 / P7320XXLPG |
Profil X-Wap[32] | Odkazy na soubor XML na internetu s úplným popisem a podrobnostmi o aktuálně připojeném zařízení. V příkladu vpravo je soubor XML pro AT&T Samsung Galaxy S2. | profil x-wap: http://wap.samsungmobile.com/uaprof/SGH-I777.xml |
Proxy připojení[33] | Implementováno jako nedorozumění specifikací HTTP. Běžné kvůli chybám v implementacích dřívějších verzí HTTP. Má přesně stejnou funkčnost jako standardní pole Připojení. Nesmí být použit s HTTP / 2.[13] | Proxy-Connection: keep-alive |
X-UIDH[34][35][36] | Na straně serveru hluboké vložení paketu jedinečného ID identifikujícího zákazníky Verizon Wireless; také známý jako „perma-cookie“ nebo „supercookie“ | X-UIDH: ... |
Token X-Csrf[37] | Používá se k prevenci padělání požadavku napříč weby. Alternativní názvy hlaviček jsou: X-CSRFToken [38] a X-XSRF-TOKEN [39] | Token X-Csrf: i8XNjC4b8KVok4uw5RftR38Wgp2BFwql |
X-ID požadavku[40][41], | Korelace požadavků HTTP mezi klientem a serverem. | ID požadavku na X: f058ebd6-02f7-4d3f-942e-904344e8cde5 |
Uložit data | Záhlaví požadavku na nápovědu klienta Save-Data dostupné v prohlížečích Chrome, Opera a Yandex umožňuje vývojářům poskytovat lehčí a rychlejší aplikace uživatelům, kteří se ve svém prohlížeči přihlásí k režimu ukládání dat. | Uložit data: zapnuto |
Pole odpovědí
Standardní pole odpovědi
Název pole | Popis | Příklad | Postavení | Standard |
---|---|---|---|---|
Access-Control-Allow-Origin, Access-Control-Allow-Credentials, Záhlaví Access-Control-Expose, Access-Control-Max-Age, Metody řízení přístupu-povolení, Záhlaví Access-Control-Allow[11] | Určení, na kterých webových stránkách se mohou účastnit sdílení zdrojů mezi zdroji | Access-Control-Allow-Origin: * | Permanentní: standardní | |
Přijmout-Patch[44] | Určuje, které formáty dokumentů opravy tento server podporuje | Accept-Patch: text / příklad; charset = utf-8 | Trvalý | |
Přijměte rozsahy | Jaké typy rozsahu částečného obsahu tento server podporuje obsluha bajtů | Rozsahy přijetí: bajty | Trvalý | |
Stáří | Věk, ve kterém byl objekt v mezipaměť proxy během několika sekund | Věk: 12 | Trvalý | |
Dovolit | Platné metody pro zadaný prostředek. K použití pro a 405 Metoda není povolena | Povolit: ZÍSKAT, HLAVU | Trvalý | |
Alt-Svc[45] | Server používá záhlaví „Alt-Svc“ (ve smyslu Alternativní služby) k označení, že k jeho prostředkům lze přistupovat také v jiném umístění v síti (hostitel nebo port) nebo pomocí jiného protokolu Při použití protokolu HTTP / 2 by servery místo toho měly odeslat rámec ALTSVC. [46] | Alt-Svc: http / 1.1 = "http2.example.com:8001"; ma = 7200 | Trvalý | |
Cache-Control | Říká všem mechanismům ukládání do mezipaměti ze serveru na klienta, zda mohou tento objekt ukládat do mezipaměti. Měří se během několika sekund | Cache-Control: max-age = 3600 | Trvalý | |
Spojení | Možnosti ovládání pro aktuální připojení a seznam polí odezvy hop-by-hop.[12] Nesmí být použit s HTTP / 2.[13] | Připojení: zavřít | Trvalý | |
Dispozice obsahu[47] | Příležitost vyvolat dialogové okno "Stažení souboru" pro známý typ MIME v binárním formátu nebo navrhnout název souboru pro dynamický obsah. U speciálních znaků jsou nutné uvozovky. | Dispozice obsahu: příloha; název souboru = "fname.ext" | Trvalý | |
Kódování obsahu | Typ kódování použitý u dat. Vidět HTTP komprese. | Kódování obsahu: gzip | Trvalý | |
Jazyk obsahu | Přirozený jazyk nebo jazyky zamýšleného publika pro přiložený obsah[48] | Obsahový jazyk: da | Trvalý | |
Délka obsahu | Délka těla odpovědi v oktety (8bitové bajty) | Délka obsahu: 348 | Trvalý | |
Umístění obsahu | Alternativní umístění pro vrácená data | Umístění obsahu: /index.htm | Trvalý | |
Obsah-MD5 | A Base64 -kódovaný binární MD5 součet obsahu odpovědi | Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ == | Zastaralý[14] | |
Rozsah obsahu | Kam ve zprávě celého těla patří tato dílčí zpráva | Rozsah obsahu: bajty 21010-47021 / 47022 | Trvalý | |
Typ obsahu | The Typ MIME tohoto obsahu | Typ obsahu: text / html; charset = utf-8 | Trvalý | |
datum | Datum a čas, kdy byla zpráva odeslána (ve formátu „HTTP-date“ podle definice v RFC 7231 ) [49] | Datum: Út, 15. listopadu 1994 08:12:31 GMT | Trvalý | |
Delta-Base | Určuje značku entity delta kódování odpovědi.[10] | Delta-Base: "abc" | Trvalý | |
ETag | Identifikátor pro konkrétní verzi zdroje, často a přehled zpráv | ETag: "737060cd8c284d8af7ad3082f209582d" | Trvalý | |
Vyprší | Udává datum a čas, po kterém je odpověď považována za zastaralou (ve formátu „HTTP-date“, jak je definováno v RFC 7231 ) | Vyprší: Čt, 1. prosince 1994 16:00:00 GMT | Permanentní: standardní | |
IM | Manipulace instancí aplikované na odpověď.[10] | IM: krmení | Trvalý | |
Naposledy změněno | Datum poslední úpravy požadovaného objektu (ve formátu „HTTP-date“ podle definice v RFC 7231 ) | Poslední úprava: Út, 15. listopadu 1994 12:45:26 GMT | Trvalý | |
Odkaz | Používá se k vyjádření zadaného vztahu s jiným prostředkem, kde je typ relace definován pomocí RFC 5988 | Odkaz: ; rel = "alternativní" [50] | Trvalý | |
Umístění | Použito v přesměrování, nebo když byl vytvořen nový zdroj. |
| Trvalý | |
P3P | Toto pole má být nastaveno P3P politika v podobě P3P: CP = "your_compact_policy" . P3P však nevzlétl,[51] většina prohlížečů to nikdy plně neimplementovala, mnoho webů nastavilo toto pole s falešným textem politiky, což stačilo k oklamání prohlížečů existenci politiky P3P a udělování oprávnění pro cookies třetích stran. | P3P: CP = "Toto není politika P3P! Další informace naleznete na stránce https://en.wikipedia.org/wiki/Special:CentralAutoLogin/P3P." | Trvalý | |
Pragma | Pole specifická pro implementaci, která mohou mít různé účinky kdekoli v řetězci požadavků a odpovědí. | Pragma: bez mezipaměti | Trvalý | |
Proxy-Authenticate | Požádejte o ověření přístupu k serveru proxy. | Proxy-Authenticate: Basic | Trvalý | |
Piny veřejného klíče[52] | Připnutí veřejného klíče HTTP, oznamuje hash autentičnosti webu TLS osvědčení | Piny veřejného klíče: max-age = 2592000; pin-sha256 = "E9CZ9INDbd + 2eRQozYqqbQ2yXLVKB9 + xcprMF + 44U1g ="; | Trvalý | |
Opakovat po | Pokud je entita dočasně nedostupná, dá klientovi pokyn, aby to zkusil později. Hodnota může být zadané časové období (v sekundách) nebo datum HTTP.[53] |
| Trvalý | |
Server | Název serveru | Server: Apache / 2.4.1 (Unix) | Trvalý | |
Set-cookie | An HTTP cookie | Set-Cookie: UserID = JohnDoe; Max. Věk = 3600; Verze = 1 | Permanentní: standardní | |
Přísná dopravní bezpečnost | Zásady HSTS informující klienta HTTP o tom, jak dlouho ukládat do mezipaměti zásady pouze HTTPS a zda se to týká subdomén. | Strict-Transport-Security: max-age = 16070400; includeSubDomains | Permanentní: standardní | |
Upoutávka | Hodnota obecného pole Trailer označuje, že daná sada polí záhlaví je přítomna v přívěsu zprávy kódované blokové přenosové kódování. | Trailer: Max-Forwards | Trvalý | |
Transfer-Encoding | Forma kódování použitá k bezpečnému přenosu entity na uživatele. Aktuálně definované metody jsou: kousek, komprimovat, vyfouknout, gzip, identita. Nesmí být použit s HTTP / 2.[13] | Kódování přenosu: blokováno | Trvalý | |
Tk | Záhlaví stavu sledování, hodnota doporučená k odeslání v reakci na DNT (nesledovat), možné hodnoty:„!“ - ve výstavbě"?" - dynamické „G“ - brána k více stranám „N“ - nesledovat „T“ - sledovat „C“ - sledovat se souhlasem „P“ - sledovat pouze se souhlasem „D“ - bez ohledu na DNT „U“ - aktualizováno | Tk:? | Trvalý | |
Vylepšit | Požádejte klienta o upgrade na jiný protokol. Nesmí být použito v HTTP / 2[13] | Upgrade: h2c, HTTPS / 1.3, IRC / 6.9, RTA / x11, websocket | Trvalý | |
Lišit se | Říká následným serverům proxy, jak porovnat záhlaví budoucích požadavků, aby se rozhodlo, zda lze použít odpověď v mezipaměti, než požadovat novou z původního serveru. |
| Trvalý | |
Přes | Informuje klienta o proxy, kterými byla odeslána odpověď. | Přes: 1,0 fred, 1,1 example.com (Apache / 1.1) | Trvalý | |
Varování | Obecné varování před možnými problémy s tělem entity. | Varování: 199 Různé varování | Trvalý | |
WWW-ověřování | Určuje schéma ověřování, které by se mělo použít pro přístup k požadované entitě. | WWW-Authenticate: Základní | Trvalý | |
Možnosti X-Frame[54] | Clickjacking ochrana: odmítnout - žádné vykreslování v rámci, stejný původ - žádné vykreslování v případě nesouladu původu, povolit od - povolit ze stanoveného místa, povolit vše - nestandardní, povolte z libovolného místa | Možnosti X-Frame: odepřít | Zastaralý[55] |
Běžná nestandardní pole odezvy
Název pole | Popis | Příklad |
---|---|---|
Zásady zabezpečení obsahu, Zásady zabezpečení obsahu X, X-WebKit-CSP[56] | Zásady zabezpečení obsahu definice. | X-WebKit-CSP: default-src 'vlastní' |
Obnovit | Používá se při přesměrování nebo při vytvoření nového prostředku. Tato aktualizace přesměruje po 5 sekundách. Rozšíření záhlaví zavedené Netscape a podporované většinou webových prohlížečů. | Obnovit: 5; url = http: //www.w3.org/pub/WWW/People.html |
Postavení | CGI pole záhlaví určující postavení odpovědi HTTP. Normální odpovědi HTTP místo toho používají samostatný stavový řádek, který je definován RFC 7230.[57] | Stav: 200 OK |
Načasování-Povolit-Původ | The Načasování-Povolit-Původ záhlaví odpovědi určuje původ, kterému je povoleno vidět hodnoty atributů načtených prostřednictvím funkcí API časování zdrojů, které by jinak byly nahlášeny jako nulové kvůli omezením křížového původu.[58] | Původ-načasování: * [, ] * |
Doba trvání obsahu X.[59] | Poskytněte trvání zvuku nebo videa v sekundách; podporováno pouze prohlížeči Gecko | Doba trvání obsahu X: 42 666 |
Možnosti typu obsahu X[60] | Jediná definovaná hodnota „nosniff“ brání internet Explorer z MIME-čichání odpovědi od deklarovaného typu obsahu. To platí i pro Google Chrome, při stahování rozšíření.[61] | Možnosti typu obsahu X: nosniff [62] |
X-Powered-By[63] | Určuje technologii (např. ASP.NET, PHP, JBoss) podporující webovou aplikaci (podrobnosti o verzi jsou často v X-Runtime , Verze X nebo Verze X-AspNet ) | X-Powered By: PHP / 5.4.0 |
X-ID požadavku, ID X-korelace[40] | Korelace požadavků HTTP mezi klientem a serverem. | ID požadavku na X: f058ebd6-02f7-4d3f-942e-904344e8cde5 |
Kompatibilní s X-UA[64] | Doporučuje preferovaný vykreslovací modul (často režim zpětné kompatibility), který se má použít k zobrazení obsahu. Také se používá k aktivaci Chrome Frame v aplikaci Internet Explorer. | Kompatibilní s X-UA: IE = EmulateIE7 Kompatibilní s X-UA: IE = edge Kompatibilní s X-UA: Chrome = 1 |
Ochrana X-XSS[65] | Cross-site skriptování (XSS) filtr | Ochrana X-XSS: 1; mode = blok |
Účinky vybraných polí
Vyhněte se ukládání do mezipaměti
Pokud webový server odpovídá pomocí Cache-Control: bez mezipaměti
pak webový prohlížeč nebo jiný systém ukládání do mezipaměti (zprostředkující proxy) nesmí použít odpověď k uspokojení následných požadavků bez předchozí kontroly s původním serverem (tento proces se nazývá ověření). Toto pole záhlaví je součástí protokolu HTTP verze 1.1 a některé mezipaměti a prohlížeče jej ignorují. Lze jej simulovat nastavením Vyprší
Hodnota pole záhlaví HTTP verze 1.0 na čas dříve než čas odezvy. Všimněte si, že no-cache nedává pokyny prohlížeči nebo proxy o tom, zda do mezipaměti obsah. Prostě řekne prohlížeči a proxy, aby před použitím ověřili obsah mezipaměti se serverem (to se provádí pomocí výše zmíněných atributů If-Modified-Since, If-Unmodified-Since, If-Match, If-None-Match). Odeslání hodnoty bez mezipaměti tedy dává pokyn prohlížeči nebo proxy serveru, aby nepoužívali obsah mezipaměti pouze na základě „kritérií aktuálnosti“ obsahu mezipaměti. Dalším běžným způsobem, jak zabránit uživateli zobrazovat starý obsah bez ověření, je Cache-Control: max-age = 0
. Toto instruuje agenta uživatele, že obsah je zastaralý a měl by být před použitím ověřen.
Pole záhlaví Cache-Control: no-store
je určen k tomu, aby instruoval aplikaci prohlížeče, aby vyvinula maximální úsilí, aby ji nezapisovala na disk (tj. neukládala ji do mezipaměti).
Požadavek, aby prostředek nebyl uložen do mezipaměti, nezaručuje, že nebude zapsán na disk. Definice HTTP / 1.1 konkrétně rozlišuje mezi historickými obchody a mezipaměti. Pokud uživatel přejde zpět na předchozí stránku, může vám prohlížeč přesto zobrazit stránku, která byla uložena na disku v úložišti historie. Toto je správné chování podle specifikace. Mnoho uživatelských agentů vykazuje různé chování při načítání stránek z úložiště historie nebo mezipaměti v závislosti na tom, zda je protokol HTTP nebo HTTPS.
The Cache-Control: bez mezipaměti
Pole záhlaví HTTP / 1.1 je také určeno pro použití v požadavcích klienta. Pro prohlížeč to znamená, že informuje server a všechny mezipaměti, že chce novou verzi prostředku. The Pragma: bez mezipaměti
pole záhlaví, definované ve specifikaci HTTP / 1.0, má stejný účel. Je však definována pouze pro záhlaví požadavku. Jeho význam v záhlaví odpovědi není zadán.[66] Chování Pragma: bez mezipaměti
v reakci je konkrétní implementace. Zatímco někteří uživatelští agenti tomuto poli v odpovědích věnují pozornost,[67] HTTP / 1.1 RFC konkrétně varuje před spoléháním na toto chování.
Viz také
Reference
- ^ „Hypertext Transfer Protocol (HTTP / 1.1): Syntax a směrování zpráv“. ietf.org. Citováno 23. července 2014.
- ^ RFC-7230 oddíl 3.2
- ^ RFC-7210 oddíl 3.1.1
- ^ RFC-7231 část 4.1
- ^ Pracovní skupina pro internetové inženýrství (1. června 2012). „RFC 6648“. Citováno 12. listopadu 2012.
- ^ „Záhlaví zprávy“. Iana.org. 11. června 2014. Citováno 12. června 2014.
- ^ „Hypertext Transfer Protocol (HTTP / 1.1): Syntax a směrování zpráv“. itef.org. Citováno 24. července 2014.
- ^ „Hypertext Transfer Protocol (HTTP / 1.1): sémantika a obsah“. ietf.org. Citováno 24. července 2014.
- ^ "jádro - server Apache HTTP". Httpd.apache.org. Archivovány od originál 9. května 2012. Citováno 13. března 2012.
- ^ A b C RFC 3229. doi:10.17487 / RFC3229.
- ^ A b C „Sdílení zdrojů mezi zdroji“. Citováno 24. července 2017.
- ^ A b „Hypertext Transfer Protocol (HTTP / 1.1): Syntax a směrování zpráv“. IETF. Červen 2014. Citováno 19. prosince 2014.
- ^ A b C d E F G h i „Hypertext Transfer Protocol verze 2 (HTTP / 2)“. IETF. Květen 2015. Citováno 6. června 2017.
- ^ A b „Hypertext Transfer Protocol (HTTP / 1.1): sémantika a obsah“. Citováno 3. června 2015.
- ^ „Předané rozšíření HTTP: Úvod“. IETF. Červen 2014. Citováno 7. ledna 2016.
- ^ „Hypertext Transfer Protocol (HTTP / 1.1): Syntax a směrování zpráv“. IETF. Červen 2014. Citováno 24. července 2014.
- ^ „Hypertext Transfer Protocol verze 2 (HTTP / 2)“. IETF. Květen 2015. Citováno 6. června 2017.
- ^ „Záhlaví zprávy“. www.iana.org. Citováno 26. listopadu 2018.
- ^ „Hypertext Transfer Protocol verze 2 (HTTP / 2)“. httpwg.org. 30. května 2015. Citováno 22. února 2019.
- ^ „Upgrade nezabezpečených požadavků - doporučení kandidátů W3C“. W3C. 8. října 2015. Citováno 14. ledna 2016.
- ^ https://www.stoutner.com/the-x-requested-with-header/
- ^ „Vyzkoušejte hlavičku HTTP„ Nesledovat “. Citováno 31. ledna 2011.
- ^ „Ochrana před webovým sledováním: minimální standardy a příležitosti k inovaci“. Citováno 24. března 2011.
- ^ IETF Nesledovat: Odhlášení od univerzálního sledování webových stránek třetích stran 7. března 2011
- ^ W3C Sledování preferenčních výrazů (DNT), 26. ledna 2012
- ^ Amos Jeffries (2. července 2010). "SquidFaq / ConfiguringSquid - Squid Web Proxy Wiki". Citováno 10. září 2009.
- ^ Softwarová nadace Apache. "mod_proxy - Apache HTTP Server verze 2.2". Citováno 12. listopadu 2014.
- ^ Dave Steinberg (10. dubna 2007). "Jak upravím svůj web SSL tak, aby fungoval s nástrojem pro vyrovnávání zatížení GeekISP?". Citováno 30. září 2010.
- ^ „Pomáháme zabezpečit komunikaci: Klient na front-end server“. 27. července 2006. Citováno 23. dubna 2012.
- ^ „Specifikace serveru OpenSocial Core API 2.5.1“. Citováno 8. října 2014.
- ^ „ID zařízení ATT“. Citováno 14. ledna 2012.
- ^ „Profil WAP“. Citováno 14. ledna 2012.
- ^ de Boyne Pollard, Jonathan (2007). „Záhlaví Proxy-Connection: je chyba v tom, jak některé webové prohlížeče používají HTTP“. Citováno 16. ledna 2018.
- ^ „Společnost Verizon vkládá soubory cookie perma ke sledování mobilních zákazníků a obchází kontroly ochrany osobních údajů“. Nadace Electronic Frontier Foundation. Citováno 19. ledna 2014.
- ^ „Kontrola známých majáků AT&T, Verizon, Sprint, Bell Canada a Vodacom Unique Identifier“. Citováno 19. ledna 2014.
- ^ Craig Timberg. „Verizon, AT&T sleduje své uživatele pomocí„ supercookies “'". The Washington Post. Citováno 19. ledna 2014.
- ^ „Žádost o padělání mezi weby SAP“. SAP SE. Citováno 20. ledna 2015.
- ^ „Django Cross Site Request Forgery ochrana“. Django (webový rámec). Archivovány od originál 20. ledna 2015. Citováno 20. ledna 2015.
- ^ „Ochrana proti padělání požadavků na úhlové křížové stránky (XSRF)“. AngularJS. Citováno 20. ledna 2015.
- ^ A b „Co je hlavička HTTP X-REQUEST-ID?“. stackoverflow.com. Citováno 19. května 2016.
- ^ „ID požadavku HTTP“. devcenter.heroku.com. Citováno 6. února 2018.
- ^ „Hodnota ID korelace“. Blog Rapid7. 23. prosince 2016. Citováno 13. dubna 2018.
- ^ Hilton, Peter. „Korelační ID pro architektury mikroslužeb - Peter Hilton“. hilton.org.uk. Citováno 13. dubna 2018.
- ^ „RFC 5789“. Citováno 24. prosince 2014.
- ^ „Alternativní služby HTTP“. IETF. Dubna 2016. Citováno 19. dubna 2016.
- ^ „Alternativní služby HTTP, část 3“. IETF. Dubna 2016. Citováno 8. června 2017.
- ^ „RFC 6266“. Citováno 13. března 2015.
- ^ „RFC 7231 - Hypertext Transfer Protocol (HTTP / 1.1): Semantics and Content“. Tools.ietf.org. Citováno 11. prosince 2017.
- ^ „RFC7231 kompatibilní HTTP hlavičky data“.
- ^ Kanonickou verzi adresy URL označte odpovědí pomocí hlavičky HTTP odkazu rel = "canonical" Citováno: 2012-02-09
- ^ W3C P3P Práce pozastavena
- ^ „Rozšíření pro připínání veřejného klíče pro HTTP“. IETF. Citováno 17. dubna 2015.
- ^ „Hypertext Transfer Protocol (HTTP / 1.1): sémantika a obsah“. Citováno 24. července 2014.
- ^ „Možnosti záhlaví pole HTTP záhlaví HTTP“. IETF. 2013. Citováno 12. června 2014.
- ^ „Zásady zabezpečení obsahu úrovně 2“. Citováno 2. srpna 2014.
- ^ „Zásady zabezpečení obsahu“. W3C. 2012. Citováno 28. dubna 2017.
- ^ „Hypertext Transfer Protocol (HTTP / 1.1): Syntax a směrování zpráv“. Citováno 24. července 2014.
- ^ "Načasování-Povolit-Původ". Mozilla Developer Network. Citováno 25. ledna 2018.
- ^ "Konfigurace serverů pro média Ogg". 26. května 2014. Citováno 3. ledna 2015.
- ^ Eric Lawrence (3. září 2008). „IE8 Security Part VI: Beta 2 Update“. Citováno 28. září 2010.
- ^ „Hosting - Google Chrome Extensions - Google Code“. Citováno 14. června 2012.
- ^ van Kesteren, Anne (26. srpna 2016). "Načíst standard". WHATWG. Archivováno z původního 26. srpna 2016. Citováno 26. srpen 2016.
- ^ „Proč rámec ASP.NET přidává do odpovědí záhlaví HTTP„ X-Powered-By: ASP.NET “? - NixCasopis. Citováno 30. září 2010.
- ^ "Definování kompatibility dokumentu: Zadání režimů kompatibility dokumentu". 1. dubna 2011. Citováno 24. ledna 2012.
- ^ Eric Lawrence (2. července 2008). „Zabezpečení IE8, část IV: Filtr XSS“. Citováno 30. září 2010.
- ^ „Hypertext Transfer Protocol (HTTP / 1.1): Caching“. ietf.org. Citováno 24. července 2014.
- ^ „Jak zabránit ukládání do mezipaměti v aplikaci Internet Explorer“. Microsoft. 22. září 2011. Citováno 15. dubna 2015.
externí odkazy
- Záhlaví: Názvy polí záhlaví stálých zpráv
- RFC 6265: IETF HTTP State Management Mechanism
- RFC 7230: Hypertext Transfer Protocol (HTTP / 1.1): Syntaxe zpráv a směrování
- RFC 7231: Hypertext Transfer Protocol (HTTP / 1.1): Sémantika a obsah
- RFC 7232: Hypertext Transfer Protocol (HTTP / 1.1): Podmíněné požadavky
- RFC 7233: Hypertext Transfer Protocol (HTTP / 1.1): Požadavky na rozsah
- RFC 7234: Hypertext Transfer Protocol (HTTP / 1.1): Ukládání do mezipaměti
- RFC 7235: Hypertext Transfer Protocol (HTTP / 1.1): Ověření
- RFC 7239: Předané rozšíření HTTP
- Záhlaví HTTP / 1.1 z pohledu webového serveru
- Internet Explorer a vlastní záhlaví HTTP - EricLaw's IEInternals - Domovská stránka webu - Blogy MSDN