Der Martin: Mehrsprachig

Beitrag lesen

Hallo Ingo,

ich habe folgende Frage: ich möchte meine Homepage in mehreren Sprachen herraus geben(deutsch,englisch).

Das finde ich schön.  :)

Besteht die Möglichkeit die Sprachausgabe der Browserversion(de,en) automatisch anzupassen, ohne das der User eine englische oder deutsche Fahne anklickt.

Allerdings, ja.
Ich merke das täglich, wenn ich wechselweise an Rechnern sitze, die komplett in deutsch (OS+Browser) bzw. komplett in Englisch (auch OS+Browser) eingerichtet sind. Da kann ich vielfach genau dieselbe Adresse mit beiden Systemen aufrufen und bekomme sie auf dem einen in deutsch, beim anderen in Englisch.

Entscheidend ist dafür aber nicht die Sprache der Programminstallation, sondern die eingestellten Sprachpräferenzen, beim IE z.B. unter Internet Options/General/Languages erreichbar. Das HTTP-Protokoll sieht vor, dass der Client (Browser) dem Server mit dem Request ein oder mehrere "preferred languages" nennt. Der Server _kann_ daraufhin, sofern die angeforderte Ressource in der gewünschten Sprache vorliegt, die jeweils passende Version aussuchen (er kann die Angabe auch völlig ignorieren). Das versteht man unter Content Negotiation.

Problem: Diese Methode erfordert Eingriffe in die Serverkonfiguration, die bei vielen Billig- oder Gratishostern nicht möglich sind. Allein über den Quelltext deiner Seiten kannst du da nichts ausrichten.

Es sei denn... wenn mich mein Gedächtnis nicht völlig im Stich lässt, gibt es noch die Möglichkeit, mit Javascript die Sprache des Browsers abzufragen und dann z.B. über location.replace() zu verzweigen. Da ich von JS nicht viel halte, kann ich dir dazu aber nichts genaues verraten - nur soviel: Solltest du tatsächlich in diese Richtung gehen, denk bitte auch an die User, die JS deaktiviert haben!

So long,

Martin