Status Code 307: Was bedeutet Temporary Redirect?

Der HTTP Status Code 307 teilt dem Client mit, dass sich die Zielseite temporär auf eine andere Adresse verschoben hat. Damit ähnelt er dem Status Code 302. Allerdings gibt es einen wichtigen Unterschied. 

Wahrscheinlich kennst du die HTTP Status Codes 301 und 302. Sie finden Verwendung, wenn eine Webseite dauerhaft oder vorübergehend an eine neue Adresse umzieht. Der Status Code 307 ist weniger bekannt. Dabei bringt er gerade bei Serverwartungen Vorteile gegenüber einem klassischen 302 mit. 

Die HTTP-Status-Klasse 3xx

Jedes Mal, wenn du eine Webseite aufrufst, findet folgender Vorgang statt: 

  1. Der Client, in diesem Fall der Browser, startet eine Anfrage beim Webserver. 
  2. Dieser antwortet mit einem Status Code. Jeder Status Code setzt sich aus 3 Zahlen zusammen und gibt Aufschluss darüber, ob die Anfrage erfolgreich war und wo beziehungsweise wie sich die gewünschten Informationen finden lassen, wenn die Webseite verzogen ist. 

Es gibt mehrere Klassen von HTTP Status Codes, die sich jeweils durch die erste Ziffer auszeichnen. Die Klasse 3xx tritt in erster Linie bei Um- und Weiterleitungen auf. Sehr bekannt in dieser Klasse ist der Code 301. Er teilt dem Client beziehungsweise Browser mit, dass eine Seite dauerhaft an eine neue Adresse umgezogen ist. Bei 302 dagegen handelt es sich nur um einen vorübergehenden Umzug. Dasselbe gilt für 307. 

Über 3xx-Status-Codes Bescheid zu wissen, ist wichtig, wenn du Um- beziehungsweise Weiterleitungen einrichten willst. Denn nur wenn du den richtigen Code verwendest, vermeidest du Rankingverluste. 

Was bedeutet der Status Code 307?

Der Status Code 307 signalisiert einen Temporary Redirect. Das heißt, dass die vom Browser aufgerufene Seite vorübergehend auf eine andere URL umgeleitet wird. Die ursprüngliche URL existiert aber weiter und kann in Zukunft wieder verwendet werden. 

Bei einer 307-Weiterleitung crawlt und indiziert der Googlebot weiter die alte Seite. Das ist ein wichtiger Unterschied zum Status Code 301. Hier aktualisiert die Suchmaschine ihren Index und gibt den Link-Juice der alten an die neue URL weiter. 

Verwendung findet der Status Code 307 vor allem bei Wartungsarbeiten. Er wird standardmäßig nicht zwischengespeichert. 

Status Code 307 vs. 302 – die Unterschiede

Es gibt einen zentralen Aspekt, weshalb der Status Code 307 als Nachfolger des Codes 302 gilt: 

Bei einem 307 darf der Client die HTTP-Anforderungsmethode nicht ändern. Das unterscheidet ihn vom Status 302. Hier wird die Anforderungsmethode POST oft in GET umgewandelt, was in Hinsicht auf die Sicherheit nicht optimal ist. 

Allerdings gilt der Status Code 302 als abwärtskompatibel und besser verträglich mit alten Systemen. 

SEO und der Status Code 307

Google behandelt den Code 307 genauso wie einen 302. Das bedeutet, es wird weiter die alte Seite indexiert. 

Deshalb ist es wichtig, den Status Code 307 nur für zeitlich begrenzte Weiterleitungen zu verwenden. Bei einem dauerhaften Umzug ist 301 die richtige Wahl. Andernfalls riskierst du Rankingverluste. 

Ein Sonderfall: 307-Redirects im Browser

Ein 307-Redirect kann auch durch den Client, also den Browser erfolgen. Das ist der Fall, wenn für eine URL, die der Nutzer unverschlüsselt über HTTP anfordert, HTTP Strict Transport Security aktiviert ist (HSTS). Dieser Sicherheitsmechanismus sorgt dafür, dass die Verbindung nur verschlüsselt mit HTTPS stattfindet. Dadurch schützt er bis zu einem gewissen Grad vor sogenannten Man-in-the-Middle-Attacken. 

Für Google ist nur die Serverseite entscheidend. Hier empfiehlt sich in diesem Fall eine dauerhafte 301-Weiterleitung von HTTP auf HTTPS. 

Steve Paine
28.11.2022