Ich habe eine Website mit mehreren Sprachen erstellt. Die URLs sehen folgendermaßen aus:
http://www.example.com/en/
http://www.example.com/de/
Wenn der Benutzer auf die Hauptdomäne http://www.example.com/
zugreift, erkennt der Webserver die Sprache des Benutzers (Accept-Language-Header) und leitet ihn an eine der oben genannten URLs weiter.
Bisher haben wir eine temporäre Umleitung (302) verwendet, da der Benutzer mit anderen Spracheinstellungen zurückkehren kann und dann zu der anderen umgeleitet werden sollte.
Zu einer anderen Frage , die zur Verwendung von 307 empfiehlt:
307 Temporäre Weiterleitung
In diesem Fall sollte die Anforderung mit einem anderen URI wiederholt werden. Zukünftige Anforderungen sollten jedoch weiterhin den ursprünglichen URI verwenden. Im Gegensatz zu der historischen Implementierung von 302 darf die Anforderungsmethode bei der erneuten Ausgabe der ursprünglichen Anforderung nicht geändert werden. Beispielsweise sollte eine POST-Anforderung mit einer anderen POST-Anforderung wiederholt werden.
Die Frage ist: Was ist der richtige Statuscode für die Sprachumleitung?
example.com/
bezieht sich auf die Stammseite ( ), die keinen Inhalt zu haben scheint. Weder Benutzer noch Bots würden etwas verpassen, wenn eine Weiterleitung von der Stammseite zu den sprachspezifischen Homepages erfolgt (vorausgesetzt, die Übersetzungen sind von dort aus wie von Ihnen beschrieben verlinkt).