307-Redirects stellen eine besondere Form der Weiterleitung dar. Anders als gewöhnliche 301- oder 302-Redirects können sie nicht nur vom Server, sondern auch vom Browser durchgeführt werden. Wie geht Google damit um?
307-Redirects können in verschiedenen Situationen auftauchen. Es handelt sich bei dabei zunächst einmal um temporäre Redirects, ähnlich wie 302-Redirects. Anders als 302-Redirects wird aber bei 307-Redirects sichergestellt, dass beim Aufruf der neuen Ressource, auf die weitergeleitet wird, die gleiche HTTP-Methode verwendet wird wie beim ursprünglichen Aufruf. Fand der ursprüngliche zum Beispiel Aufruf mit einer "Get"-Methode statt, so wird diese auch für den Aufruf der neuen Ressource genutzt.
307-Redirects im Browser
307-Redirects treten außerdem auf, wenn der Nutzer in seinem Browser eine URL über HTTP anfordert, also unverschlüsselt, und wenn für diese URL HSTS aktiviert ist. HSTS steht für HTTP Strict Transport Security. Dabei handelt es sich um einen Schutzmechanismus, der sicherstellen soll, dass Verbindungen ausschließlich verschlüsselt per HTTPS stattfinden sollen. Zu diesem Zweck sendet der Server eine entsprechende Information im Header.
Per HSTS lassen sich sogenannte Man-in-the-Middle-Attacken eingrenzen. Ohne HSTS würden viele Anfragen an einen Server, der HTTPS bereitstellt, zunächst unverschlüsselt per HTTP erfolgen und könnten von einem Angreifer abgefangen und manipuliert werden, um zum Beispiel geänderte Inhalte per HTTP zurück zu senden. Sobald aber ein Browser eine URL aufgerufen hat, für die HSTS aktiviert ist, werden zukünftige Aufrufe durch den Browser sofort per HTTPS durchgeführt, was die Angriffsmöglichkeiten einschränkt.
Ruft der Nutzer nun eine URL mit aktiviertem HSTS per HTTP auf, fragt der Browser automatisch die HTTPS-URL an und setzt dabei den Status 307. Die Weiterleitung erfolgt also nicht durch den Server, sondern durch den Client.
Google: Der Server ist entscheidend
Für Google ist dagegen entscheidend, was auf Serverseite geschieht: Hier sollte eine dauerhafte Weiterleitung (301-Redirect) von HTTP auf HTTPS eingerichtet sein, um zu vermeiden, dass Inhalte unverschlüsselt ausgespielt werden können.
Google behandelt 301-Weiterleitungen ähnlich wie 302-Weiterleitungen (wobei letztere temprorär sind). Allerdings gibt es zwischen diesen beiden Varianten einen kleinen Unterschied: Bei 301-Weiterleitungen tendiert Google dazu, die Inhalte des Weiterleitungsziels zu indexieren. Bei 302-Redirects besteht dagegen die Tendez zum Indexieren der Inhalte der Ursprungs-URL. Einen Überblick über die Behandlung verschiedener Weiterleitungen hatte Google im vergangenen Jahr gegeben.
Fazit
307-Redirects müssen differenziert betrachtet werden. Stammen sie vom Server, werden sie von Google behandelt wie temporäre Redirects. Stammen sie vom Client (im Falle von HSTS), sind sie für Google nicht sichtbar. Dann kommt es darauf an, wie die Redirects von HTTP nach HTTPS auf dem Server eingerichtet sind. Hier sollten 301-Redirects verwendet werden.
Titelbild © bofotolux - Fotolia.com