HTTP-Header
HTTP ist ein Netzwerkprotokoll, mithilfe dessen sich ein Webbrowser (bzw. ein Bot) sowie ein Webserver über die Übertragung von Webseiten verständigen. Der Webbrowser überträgt seine Anfrage im Request Header, sowie ggf. über die Methode POST versandte Inhalte im Request Body. Der Webserver überträgt seine Antwort im Response Header und ggf. den Inhalt einer HTML-Datei (bzw. einer Grafikdatei oder einer CSS-Datei) im Response Body.
Beispiel für den Austausch von HTTP-Headern bei Abruf dieser Seite:
Request Header:
GET /howtos/http-header HTTP/2
Host: jkip.de
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: de,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate, br
Referer: https://jkip.de/howtos
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Pragma: no-cache
Cache-Control: no-cache
Response Header:
HTTP/2 200 OK
Expires: Wed, 11 Jan 1984 05:00:00 GMT
Cache-Control: no-cache, must-revalidate, max-age=0
Vary: Accept-Encoding
Content-encoding: gzip
Content-length: 5987
Content-type: text/html; charset=UTF-8
Date: Mon, 03 Jul 2023 13:31:42 GMT
Server: Apache/2.4.57 (Debian)
X-Firefox-Spdy: h2
HTTP-Header überprüfen
Mit den Entwicklerwerkzeugen der Webbrowser kann man sich die HTTP-Header anzeigen lassen
in Firefox:
in den Entwicklerwerkzeugen die Netzwerkanalyse aufrufen, dann die Seite neu laden. Unterhalb werden dann alle Dateien aufgelistet, die auf diese Anfrage hin vom Webserver übertragen wurden. Wenn man eine Datei auswählt, kann man sich auf der rechten Seite den Response Header (Antwortkopfzeilen) sowie dadrunter den Request Header des Browsers (Anfragekopfzeilen) anschauen.
in Chromium (ähnlich in Chrome):
über „weitere Tools“ die Entwicklertools aufrufen und dort den Reiter Network auswählen. Dann die Seite neu laden. Unten links dann die betreffende Datei auswählen, und rechts auf den Reiter Headers klicken. Dadrunter werden dann Response und Request Headers angezeigt.
HTTP-Header setzen
In PHP lassen sich Response Header mit der Funktion header() setzen.
Ist das Apache-Modul mod_headers aktiviert, können darüber HTTP-Header gesetzt, geändert und entfernt werden.