Поширені HTTP-заголовки

HTTP-заголовки — це пари «ключ — значення», що надсилаються на початку кожного запиту й відповіді. Вони несуть метадані: тип вмісту, правила кешування та автентифікацію. Скористайтеся таблицею, щоб розпізнавати заголовки, які трапляються під час розробки й налагодження веб-трафіку.

Оновлено:

ЗаголовокНапрямокПризначення
HostrequestIdentifies the server's host and port (from the URL).
User-AgentrequestReports the client software (browser, OS, bot) making the request.
AcceptrequestLists the response media types (MIME) the client can handle.
AuthorizationrequestCarries credentials (token, Basic auth) to authenticate the client.
Content-Typerequest/responseStates the media type of the request or response body.
Content-Lengthrequest/responseGives the size in bytes of the request or response body.
CookierequestSends stored key/value pairs from a previous response back to the server.
Set-CookieresponseServer instructs the client to store a cookie for later requests.
Cache-Controlrequest/responseDirects caching behaviour: no-cache, max-age, private, etc.
ETagresponseOpaque identifier for a resource version, used for revalidation.
If-None-MatchrequestSends an ETag; server returns 304 if the resource is unchanged.
LocationresponsePoints the client to a new URL for redirects (3xx) or created resources.
Access-Control-Allow-OriginresponsePermits a browser to share a response across origins (CORS).
X-Forwarded-ForrequestRecords the client IP as seen through a proxy or load balancer.
RefererrequestIndicates the URL of the page that linked to the requested resource.

Примітки

Часті запитання

У чому різниця між заголовком запиту й відповіді?
Заголовки запиту надсилає клієнт (браузер чи застосунок) серверу; заголовки відповіді повертає сервер разом із відповіддю. Деякі, як Content-Type, трапляються з обох боків.
Чи залежать назви HTTP-заголовків від регістру?
Ні. За специфікацією назви заголовків нечутливі до регістру, тому Content-Type і content-type — одне й те саме. Title-Case — лише домовленість.
Для чого потрібен заголовок Host?
Host повідомляє серверу, до якого домену спрямовано запит. У HTTP/1.1 він обов'язковий і дозволяє одному серверу розміщувати багато сайтів за назвою.
Як кешування працює через заголовки?
Cache-Control визначає, як довго відповідь можна кешувати, а ETag і If-None-Match дають змогу клієнту запитати «змінилося?» і отримати легкий 304 Not Modified.