HTTP Header Check

HTTP ist das Fundament des Internets. Das Protokoll (Hypertext Transfer Protocol) sorgt dafür, dass Webseiten übertragen werden. Dank verschiedener Standard-Header wird es ebenfalls dazu verwendet, wichtige Informationen wie zum Beispiel Cache-Zeiten zu übermitteln.

HTTP Header Check
  • Intervall: 60 Minuten
  • Ausgeführt durch: Headless Chrome

HTTP Header werden dazu verwendet Meta-Informationen für eine Webseite zu übertragen. Der bekannteste ist wohl der HTTP Status Code, der beschreibt, ob das Abrufen der Webseite ein Erfolg war und was der Browser mit der Seite machen soll. Der wichtigste optionale Anwendungsfall für die Header ist das Caching-Verhalten. Aber auch die Information, ob zum Beispiel der Inhalt einer Webseite vor der Übertragung komprimiert werden soll, versteckt sich in den Headern.

Der HTTP Header Check von Leankoala wird dazu genutzt wichtige Header auf ihr Vorhandensein zu überprüfen. Zusätzlich kann auch der Wert des Headers mit einem hinterlegten Wert verglichen und bei Abweichungen alarmiert werden. 

Der HTTP Header Check läuft einmal pro Stunde und nimmt reguläre Ausdrücke als Parameter an.

HTTP Header Check Screenshot

Beispiele

Cache-Header überprüfen

Über die Jahre sind sehr viele Möglichkeiten entstanden HTTP Header für das Caching zu verwenden. Der Einfachheit halber wollen wir hier aber nur ein Beispiel durchspielen (mehr Infos zum Thema Cache). Will man, dass eine Webseite vom Browser nicht vorgehalten wird, da man dem Nutzer immer die aktuellsten Daten zeigen will, so setzt man den Cache-Control Header auf no-cache. Der Test dazu in Leankoala ist entsprechend einfach aufgesetzt. Der einzutragende Key im Check-Formular ist "cache-control" und der Value ist "no-cache". Fertig.

Age-Header ist nicht Null

Hochfrequentierte Webseiten haben häufig eine zusätzliche Caching-Schicht implementiert wie einen Reverse Proxy, zum Beispiel einen Varnish. So ein Cache setzt in vielen Fällen einen Age-Header, der beschreibt, wie alt die vorgehaltenen Seiten sind. Im Fall einer bekannten redaktionellen Webseite mit tausenden Besuchern, die denselben Artikel lesen wollen, ist es sinnvoll nicht bei jedem Besucher den Server dazu zu bringen eine Antwort zu produzieren.

In diesem Fall produziert nur der erste Besucher tatsächlich Last auf dem Server und bekommt ein age = 0 mitgeliefert. Alle nachfolgenden Anfragen bekommen einen Wert größer als Null. Wenn nur einer von tausenden Besuchern einen Age-Header = 0 als Antwort bekommt, so ist es statistisch unwahrscheinlich, dass der Leankoala-Test diese Anfrage produziert. Falls dies doch der Fall sein sollte, ist die Chance groß, dass in der zusätzlichen Caching-Schicht ein Fehler unterlaufen ist.

Mit Leankoala sieht diese Überprüfung wie folgt aus: Der Key des Checks ist "age", da wir den Age-Header überprüfen wollen. Der Value ist nicht ganz so trivial in diesem Fall. Leankoala verarbeitet reguläre Ausdrücke. Diese müssen hier zum Einsatz kommen. Der passende Wert ist hier "^(?!0+$)\d+$".

Leankoala kostenlos ausprobieren