HTTP linije zaglavlja su komponente zaglavlja u porukama HTTP zahteva i HTTP odgovora koji se šalju između klijenta i servera. Ovo mogu biti veb pretraživač i veb server. Zaglavlja sadrže instrukcije koje određuju način prenosa podataka od servera do klijenta. Opšta HTTP zaglavlja (zahtev,odgovor) su definisana u HTTP protokolu.
Lista svih osnovnih zaglavlja, kao i besplatno preuzimanje privremenih zaglavlja su dostupni na IANA: Message Headers.
Svako polje zaglavlja se sastoje od imena i vrednosti polja. Sva zaglavlja se generalno mogu podeliti na dva tipa: polja zahteva (koje koristi klijent) ili polja odgovora (koje koristi server). Međutim, neka HTTP zaglavlja kao što su Cache-Control, Via, Content-Length, Content-Tipe, itd. mogu biti istovremeno korišćena i od strane klijenta i servera.
Kako videti HTTP zaglavlja?
HTTP zaglavlja zahteva ili odgovora se mogu videti preko alatki veb pregledača kao što je Web Console za Firefox koji se može pokrenuti pomoću prečice na tastaturi Ctrl + Shift + K.
Možete ih dobiti i pomoću sledećih PHP funkcija: getallheaders() apache_request_headers() za zahtev i apache_response_headers() za odgovor.
Evo nekih uobičajenih zaglavlja zahteva klijenta:
request line | GET /http-headers-request-response-header-fields.html HTTP/1.1 |
HTTP headers (request) | Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 |
Accept-Encoding: gzip, deflate | |
Cache-Control: no-cache | |
Host: help.superhosting.bg | |
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Firefox/45.0 |
Evo nekih uobičajenih zaglavlja odgovora servera:
status line | HTTP/1.x 200 OK |
HTTP headers (response) | Content-Encoding: gzip |
Content-Type: text/html; charset=utf-8 | |
Last-Modified: Wed, 30 Mar 2016 08:15:07 GMT | |
Server: Apache | |
Vary: User-Agent |
Upravljanje HTTP zaglavljima
HTTP zaglavljima se upravlja pomoću mod_headers Apache modulu modifikovanjem .htaccess fajl. Na primer:
<IfModule mod_headers.c>
Header append Vary: User-Agent
</IfModule>
HTTP zaglavljima se takođe može upravljati preko aplikacija hosting naloga. To se može uraditi preko PHP-a, na primer, da biste podesili zaglavlje Last-Modified koje pokazuje datum poslednje izmene dokumenta:
$modify_time = filemtime($file);
header("Last-Modified: " . gmdate("D, d M Y H:i:s", $modify_time) . " GMT");
HTTP zaglavlja odgovora servera možete postaviti preko PHP header() funkcije. Headers_list () pruža informacije o tome koja su i koja će zaglavlja biti poslata klijentu. Headers_sent () Vam omogućava da proverite da li su i gde tačno poslata.