Debian-Webseiten in verschiedenen Sprachen


Offenkundig benutzen nicht alle Menschen auf der Erde dieselbe Sprache. Mit dem Wachsen des Internets wird es immer natürlicher, Seiten zu finden, die in mehr als einer Sprache vorhanden sind. Es wurde daher der Standard der Inhaltsaushandlung (Englisch: content negotiation) eingeführt. Er erlaubt es dem Benutzer, die bevorzugten Sprachen einzustellen, in denen er die Dokumente gerne erhalten möchte. Die Version, die schließlich geliefert wird, wird zwischen dem Browser und dem Server ausgehandelt: der Browser schickt Ihre Voreinstellungen zum Server, der aufgrund dieser Einstellungen und den vorhandenen Versionen entscheidet, welche Version des Dokuments zurückgegeben wird.

Beachten Sie, dass die Auswahl einer anderen Sprache (aus der Liste der verfügbaren Übersetzungen am Fuß der Seite) nur die aktuelle Seite in dieser Sprache darstellen wird. Dies ändert nicht die Standardsprache. Falls Sie auf eine andere Seite klicken, wird diese wieder in der Originalsprache dargestellt. Um Ihre Standardsprache zu ändern, müssen Sie die Spracheinstellungen in der Konfiguration Ihres Browsers wie unten beschrieben ändern.


Was tun, wenn eine Webseite in der falschen Sprache dargestellt wird

Der erste und wahrscheinlichste Grund, warum ein Dokument mit der falschen Sprache vom Debian-Web-Server geliefert wird, ist ein unpassend konfigurierter Browser. Lesen Sie bitte den Abschnitt Wie man die Spracheinstellungen konfiguriert, um dies zu beheben.

Der zweite Grund betrifft defekte oder fehlkonfigurierte Caches. Dies ist ein wachsendes Problem, da mehr und mehr ISPs im Cachen einen Weg sehen, den Netzwerk-Verkehr zu reduzieren. Lesen Sie bitte Potenzielle Probleme mit Proxy-Servern, selbst wenn Sie glauben, keinen zu benutzen.

Der dritte Grund ist, dass es direkt mit www.debian.org ein Problem gibt. Allerdings ließ sich nur eine Handvoll von Problemen, die in den letzten Jahren wegen falscher Sprachen berichtet wurden, auf einen Fehler auf unserer Seite zurückführen. Wir bitten Sie daher, dass Sie zuerst die beiden ersten Probleme genau untersuchen, bevor Sie uns ansprechen. Wenn Sie herausfinden, dass http://www.debian.org/ funktioniert, jedoch ein Spiegel-Server nicht, berichten Sie dies bitte, wir werden die Spiegel-Administratoren benachrichtigen.

Nach dem Lösen dieser Probleme raten wir Ihnen, dass Sie den lokalen Cache (sowohl auf der Festplatte als auch im Speicher) in Ihrem Browser leeren, bevor Sie erneut versuchen, die Seiten anzuzeigen. Wir schlagen Ihnen außerdem vor, zum Testen lynx zu verwenden. Es ist der einzige Browser, den wir gefunden haben, der zu 100% mit der HTTP-Spezifikation für Inhaltsaushandlung konform ist.

Potenzielle Probleme mit Proxy-Servern

Proxy-Server sind im Wesentlichen Web-Server, die keinen eigenen Inhalt haben. Sie befinden sich in der Mitte zwischen dem Benutzer und den echten Web-Servern. Sie nehmen Ihre Anfrage für Webseiten entgegen und holen sich die Seite. Anschließend leiten sie die Seite an Sie weiter und machen auch eine lokale, zwischengespeicherte Kopie für spätere Anfragen. Das kann den Netzwerk-Verkehr stark verringern, wenn mehrere Benutzer dieselbe Seite anfordern.

Das ist meistens eine großartige Idee, sie schlägt jedoch fehl, wenn der Cache fehlerhaft ist. Insbesondere einige ältere Proxy-Server verstehen Content-Negotiation nicht. Das resultiert darin, dass sie Seiten in einer Sprache zwischenspeichern und zurückliefern, sogar wenn eine andere Sprache angefordert wurde. Die einzige Lösung besteht darin, die zwischenspeichernde Software zu aktualisieren oder auszutauschen.

Historisch gesehen benutzen Personen nur dann einen Proxy, wenn sie ihre Browser so konfiguriert haben, einen zu benutzen. Dies ist nicht mehr der Fall. Ihr ISP leitet möglicherweise alle Ihre HTTP-Anfragen zu einem transparenten Proxy. Wenn dieser Proxy Content-Negotiation nicht vernünftig versteht, können Benutzer die zwischengespeicherten Seiten in der falschen Sprache erhalten. Der einzige Weg, wie Sie das beheben können, ist, sich bei Ihrem ISP zu beschweren, damit dieser seine Software aktualisiert oder ersetzt.


Wie man die Spracheinstellungen konfiguriert

Auf welchen Wert soll die Variable gesetzt werden?

Sie sollten die bevorzugte Sprache auf alle Sprachen einstellen, die Sie sprechen, sortiert nach Ihren Vorzügen. Es ist eine gute Idee, Englisch (en) zur Sicherheit hinzuzufügen (als Letztes in der Liste), da die Originalsprache der Debian-Webseiten Englisch ist und nicht alle Dokumente in Ihre bevorzugte Sprache übersetzt sein dürften.

Da wahrscheinlich Deutsch Ihre Muttersprache ist, würden Sie beispielsweise die Sprachauswahl derart setzen, dass die deutsche Sprache zuerst kommt (mit dem Sprach-Code de), gefolgt von Englisch (mit dem Sprach-Code en).

Lesen Sie weiter unten genaue Anweisungen, wie man dies in speziellen Browsern erledigt.

Wie Sie dort sehen können, werden Ihnen die meisten Browser eine Benutzerschnittstelle (User Interface) vorsetzen, die einige Details betreffend der Auswahl Ihrer bevorzugten Sprache(n) versteckt. Falls dies nicht der Fall sein sollte, so beachten Sie bitte eine wichtige Vereinfachung im vorhergehenden Absatz: wenn Sie lediglich eine Liste von Sprachen wie de, fr, en angeben, wird noch keine Präferenz definiert, sondern nur gleichrangige Optionen, und der Server wird womöglich Ihre Anordnung ignorieren. Wenn Sie wirkliche Präferenzen angeben wollen, so müssen Sie Qualitätswerte (quality values) verwenden. Bei diesen handelt es sich um Fließkommawerte zwischen 0 und 1, wobei höhere Werte eine höhere Präferenz bedeuten. Im obigen Fall würden Sie somit also wahrscheinlich etwas in der Art von de; q=1.0, fr; q=0.7, en; q=0.5 verwenden.

Sie müssen vorsichtig mit der Verwendung von Sub-Kategorien von Sprachen sein. Die Verwendung von en-GB, fr zum Beispiel hat nicht die Auswirkungen, die von den meisten Personen erwartet werden (wenn sie nicht die HTTP-Spezifikation gelesen haben).

Wir raten Ihnen dringend dazu, keine Ländererweiterungen zu einer Sprache hinzufügen, wenn Sie keinen guten Grund dafür haben. Wenn Sie eine hinzufügen, stellen Sie sicher, dass Sie ebenfalls die Sprache ohne die Erweiterung hinzufügen.

Erklärung: Ein Server, der eine Anfrage für ein Dokument mit einer bevorzugten Sprache von en-GB, fr erhält, wird nicht die englische (en) vor der französischen Version zurückliefern. Er wird nur dann das englische Dokument vor dem französischen liefern, wenn es eine Version der Datei mit en-gb für die Sprach-Erweiterung gibt.

Daher sollten Sie Ihren Browser derart konfigurieren, dass er en-GB, en, fr oder einfach nur en, fr schickt. Es funktioniert jedoch in umgekehrter Richtung, z.B. kann ein Server en-us zurückliefern, wenn en angefordert wurde.

Für zusätzliche Informationen über das Setzen der bevorzugten Sprach-Variable lesen Sie die Apache-Dokumentation über Inhaltsaushandlung.

Die bevorzugte Sprache im Browser einstellen

Um die Standardsprache in Ihrem Browser einzustellen, müssen Sie eine Variable setzen, die dem Server übermittelt wird. Wie das genau zu geschehen hat, hängt vom Browser ab, den Sie verwenden.

Mozilla / Netscape 4.x und neuer
    Edit -> Preferences -> Navigator -> Languages
Beachten Sie: Mit Netscape 4.x müssen Sie sich vergewissern, dass Sie die Sprache aus den verfügbaren Wahlmöglichkeiten ausgewählt haben. Einige Leute haben schon Probleme gemeldet, wenn Sie die Sprache von Hand eingegeben haben.
Mozilla Firefox
Version 3.0 und neuer:
Linux:
     Bearbeiten -> Einstellungen -> Inhalt -> Wählen ...
Windows:
     Tools -> Options -> Content -> Languages -> Choose ...
Mac OS:
     Firefox -> Preferences -> Content -> Languages -> Choose...
  

Version 1.5 und neuer:
Linux:
     Bearbeiten -> Einstellungen -> Erweitert -> Allgemein -> Sprachen bearbeiten
Windows:
     Tools -> Options -> Advanced -> General -> Edit Languages
Version 0.9 und neuer:
Linux:
     Bearbeiten -> Einstellungen -> Allgemein -> Sprachen
 
Windows:
     Tools -> Options -> General -> Languages
 
Bei älteren Versionen müssen Sie about:config aufrufen und den Wert von intl.accept_languages ändern.
Iceweasel
   Bearbeiten -> Einstellungen -> Inhalt -> Sprachen -> Wählen...
Internet Explorer
Windows:
     Tools oder View oder Extras -> Internet Options -> (General) Languages
Mac OS:
     Edit -> Preferences -> Web Browser -> Language/Fonts
Pocket Internet Explorer
     Erzeugen Sie den Schlüssel AcceptLanguage in der Registry unter
     HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\International\
     mit der Zeichenkette de; q=1.0, en; q=0.5 (ohne Anführungszeichen).
Opera
Die meisten Versionen:
     Extras -> Einstellungen -> Allgemein -> Sprache
Linux/*BSD Versionen 5.x und 6.x:
     File -> Preferences -> Document -> Languages
Nokia 770 Web-Browser: Editieren Sie die Datei /home/user/.opera/opera.ini und fügen Sie folgende Zeile im Abschnitt [Adv User Prefs] hinzu:
     HTTP Accept Language=de;q=1.0,en;q=0.5
Galeon
     Settings -> Preferences -> Rendering -> Languages
Epiphany
     Bearbeiten -> Einstellungen -> Sprache -> Sprachen
Konqueror
Falls Sie nur eine Sprache einstellen wollen, sollte dies recht einfach sein, sobald der Fehler #358459 behoben ist: Wählen Sie sie einfach im KDE-Control-Center aus und starten Sie KDE neu, um diese Änderungen wirksam werden zu lassen.
Falls Sie mehrere Sprachen einstellen wollen oder eine provisorische Lösung für den oben erwähnten Fehler benötigen, müssen Sie zurzeit Ihre Datei ~/.kde/share/config/kio_httprc ändern und eine Zeile der folgenden Art einfügen:
     Languages=de;q=1.0, en;q=0.5
Lynx
Sie können entweder in .lynxrc die Variable preferred_language ändern oder in Lynx das Kommando O (den Buchstaben, nicht die Zahl!) benutzen.

Zum Beispiel, verwenden Sie die folgende Zeile in Ihrer .lynxrc

preferred_language=de; q=1.0, en; q=0.5
W3 (Emacs-basierter Web-Browser)
(setq url-mime-language-string  "preferred_language=de; q=1.0, en; q=0.5")
oder verwenden Sie das benutzerspezifische Paket (URL Version p4.0pre.14 vorausgesetzt):
Hypermedia -> URL -> Mime -> Mime Language String...
iCab
     Edit -> Preferences -> Browser -> Fonts, Languages
W3M
     Options (o) -> Other Behavior -> Accept-Language
Safari
Safari benutzt die Mac OS-X-Systemeinstellungen, um die bevorzugte Sprache festzulegen:
    System preferences -> International -> Language
ELinks
Sie können hier die Standard-Interface-Sprache einstellen:
    Setup -> Language
Dies wird ebenfalls die angeforderte Sprache von Webseiten ändern. Sie können dieses Verhalten ändern und die Accept-Languages HTTP-Variable auch genauer einstellen:
    Setup -> Options manager -> Protocols -> HTTP
Netscape 3.x
Fügen Sie
     *httpAcceptLanguage: [bevorzugte Sprach-Zeichenkette]
zur Netscape app-defaults Datei oder ~/.Xresources hinzu.
IBrowse
Wählen Sie Preferences, dann Settings, schließlich Network. Unter Accept language wird wahrscheinlich standardmäßig ein * angezeigt. Wenn Sie auf den Locale-Knopf drücken, sollte Ihre bevorzugte Sprache hinzugefügt werden. Falls nicht, können Sie sie manuell hinzufügen. Danach klicken Sie auf OK.
Voyager
Wählen Sie Settings, danach Languages. Sie können es nun entweder manuell eingeben oder auf Get from locale klicken. Klicken Sie nun OK, wenn Sie fertig sind.
Chromium
Customize and control Chromium -> Options -> Under the Hood -> Web content -> Change font and language settings -> Languages

Wenn Sie Informationen zur Konfiguration eines Browsers haben, der nicht oberhalb aufgeführt ist, senden Sie diese bitte an debian-www@lists.debian.org.