Mehrsprachige Web-Auftritte

Apache, Lighttpd, nginx, Cherokee
Post Reply
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Mehrsprachige Web-Auftritte

Post by nyxus »

Da ich in Kürze ein paar Seiten auf mehrsprachige Versionen umstellen möchte frage ich mich, wie ich das am besten mache. Nach ein bißchen rumgegoogele bin ich auf die MultiViews gestoßen, was in meinen Augen ganz sinnvoll aussieht. Wenn ich mir aber ein paar mehrsprachige Seiten anschaue (z.B. debianhowto.de), dann sieht es so aus, als wenn die nicht mit MultiViews arbeiten.

Jetzt frage ich mich natürlich: Spricht etwas gegen MultiViews oder gibt es sogar noch was besseres?

Ich benötige es übrigens für einen Debian-Stable-Apachen.
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by dodolin »

Spricht etwas gegen MultiViews oder gibt es sogar noch was besseres?
Meines Wissens nach gibt es nichts besseres. Gegen MultiViews spricht folgendes (und wird wohl auch der Grund sein, warum Seiten wie debianhowto.de, debian.org u.v.a.m. nicht mit MultiViews, sondern mit expliziten Links arbeiten):

Die HTTP Specs besagen, dass ein Browser, der z.B.

Accept-Encoding: de

in seinen Anfragen mitsendet, NUR diese Sprache akzeptiert. Gibt es die jeweilige Seite jetzt z.B. nur in en und fr, dann ist der Webserver laut Specs dazu verpflichtet, einen 406 Not Acceptable zurückzusenden, denn der Client hatte ihm ja explizit mitgeteilt, dass er NUR "de" akzeptiert.

Es gibt leider viel zu viele DAUs auf dieser Welt, die ihre Browser in dieser Hinsicht falsch konfiguriert haben. Sie werden aber den Teufel tun und den Fehler bei sich suchen, sondern sich nach dem 406 lediglich denken: "Was für ne blöde Seite, die funktioniert hat nicht." und danach auf anderen Seiten weitersurfen.

Es sollte also jeder selbst abwägen, ob er unter diesen Umständen MultiViews benutzen will oder nicht.
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by nyxus »

dodolin wrote:Die HTTP Specs besagen, dass ein Browser, der z.B.

Accept-Encoding: de

in seinen Anfragen mitsendet, NUR diese Sprache akzeptiert.
Echt? Ich habe das so verstanden, daß man für einen zweisprachigen Auftritt drei Dateien auf dem Server hat:

index.html.en
index.html.de
index.html.html

Dabei sollte die dritte Datei ausgeliefert werden wenn die explizit vorgehaltenen Sprachen nicht passen.

Das werde ich aber nochmal genau testen. Denn wenn es so funktioniert wie von Dir beschrieben, dann würde ich wohl doch davon Abstand nehmen.
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by dodolin »

Das werde ich aber nochmal genau testen.
Mach das. :)
Und berichte hier von den Ergebnissen, wenn du möchtest. Würde mich auch sehr freuen, wenn es in dieser Hinsicht endlich Methoden gäbe, die "sicher" funktionieren, egal, wie verkonfiguriert diverse Browser sind...
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by nyxus »

so, ich habe das jetzt mal getestet:

deutscher Firebird 0.7 unter deutschem XP, Language auf "fr" gesetzt. Das ergibt dann

Code: Select all

intl.accept_languages=fr-fr, fr, en
In meinem Verzeichnis habe ich folgende Dateien:

Code: Select all

-rw-r--r--    1 www-user users        3840 Jan 17 00:48 index.html.de
-rw-r--r--    1 www-user users        3840 Jan 17 00:48 index.html.html
-rw-r--r--    1 www-user users        3765 Jan 17 00:48 index.html.es
Wenn ich jetzt die Seite anfordere, dann bekomme ich die default-Seite geliefert (index.html.html).

Jetzt habe ich die index.html.html mal umbenannt, und erneut angefordert. Dann bietet er mir die "es"-Seite zum Download an, zeigt sie aber nicht an (das ist jetzt zwar nicht das was ich haben möchte, aber es matcht ja auch keine Sprache).

Nachdem ich die Sprache auf "de" zurückgestellt habe kommt wieder die deutsche.

Zusammengefasst:
Ist eine passende Sprachdatei vorhanden kommt diese. Ist keine passende Sprachdatei vorhanden kommt die default-Datei.

Für mich sieht das gut aus. Sofern keine weiteren Bedenken kommen werde ich das wohl dann so machen.
User avatar
Joe User
Project Manager
Project Manager
Posts: 11191
Joined: 2003-02-27 01:00
Location: Hamburg
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by Joe User »

Code: Select all

index.de.html
index.en.html
statt

Code: Select all

index.html.de
index.html.en
verhindert den Download-Dialog...
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by nyxus »

Joe User wrote:

Code: Select all

index.de.html
index.en.html
hat leider den Nachteil, daß der User dann kein index.html mehr eingeben kann. Denn dabei funktioniert die Negotiation nicht. Und auch beim Aufruf http://www.domain.de liefert er dann immer die Default-Seite zurück. Wobei für letzteres wohl eine Erweiterung des DirectoryIndex mit index.html.html an erster Stelle reichen müßte.
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by nyxus »

Nyxus wrote:Wobei für letzteres wohl eine Erweiterung des DirectoryIndex mit index.html.html an erster Stelle reichen müßte.
Reicht leider nicht. Ist aber nicht wirklich ein Problem, da man die .html.html-Datei ja einfach vorhalten kann. Blöder ist dabei schon, daß man auf der Windows-Büchse die neuen Endungen jetzt noch alle mit dem HTML-Editor verknüpfen muß um seine Seiten zu verwalten.
morgherkul
Posts: 44
Joined: 2003-08-08 01:08
 

Re: Mehrsprachige Web-Auftritte

Post by morgherkul »

Nyxus wrote:Da ich in Kürze ein paar Seiten auf mehrsprachige Versionen umstellen möchte frage ich mich, wie ich das am besten mache.
Schon mal was von CMS-Systemen gehört? Ich würde da Zope mit Plone empfehlen. Mit dem i18n-Produkt kann man dann internationale Seiten erstellen. Plone bzw. Zope liefert dann anhand der Browserkennung z. B. de für Deutsch, die Seite in deutscher Sprache.

Schöne Grüße
morgherkul
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by nyxus »

morgherkul wrote:Schon mal was von CMS-Systemen gehört? Ich würde da Zope mit Plone empfehlen.
Meine Familie sieht mich jetzt schon selten genug. Und wenn ich dann noch damit anfange ... Ne, ich suche halt etwas einfacheres.
User avatar
Joe User
Project Manager
Project Manager
Posts: 11191
Joined: 2003-02-27 01:00
Location: Hamburg
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by Joe User »

PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
morgherkul
Posts: 44
Joined: 2003-08-08 01:08
 

Re: Mehrsprachige Web-Auftritte

Post by morgherkul »

Nyxus wrote:Meine Familie sieht mich jetzt schon selten genug. Und wenn ich dann noch damit anfange ... Ne, ich suche halt etwas einfacheres.
Okey, das ist ein Argument. :wink: Aber: die Zeit, die man anfänglich für so ein System aufbringen muss, zahlt sich auf die Dauer aus. Gerade wegen der Zeitersparnis (vielleicht nicht am Anfang) und der Dynamik arbeitet man ja mit CMS-Systemen.

Aber mach's, wie du's mag's.

Schöne Grüße
morgherkul
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by nyxus »

was soll uns das jetzt sagen?
User avatar
Joe User
Project Manager
Project Manager
Posts: 11191
Joined: 2003-02-27 01:00
Location: Hamburg
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by Joe User »

Nyxus wrote:
was soll uns das jetzt sagen?
Gelesen? Verstanden?
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
User avatar
nyxus
Posts: 626
Joined: 2002-09-13 08:41
Location: Lübeck
Contact:
 

Re: Mehrsprachige Web-Auftritte

Post by nyxus »

Joe User wrote:Gelesen?
nein, aber die Anleitung zum 1.x-Apachen.
Joe User wrote:Verstanden?
Bin ich der Meinung. Ich weiß trotzdem nicht was Du mir sagen willst.
rootmaster
Posts: 483
Joined: 2002-04-28 13:30
Location: Hannover
 

Re: Mehrsprachige Web-Auftritte

Post by rootmaster »

imho sollte es so aussehen:

0.) default-file-match wird gesucht
1.) apache überprüft auf match im accept-header mit AddLanguage-extensions
2.) Ist der accept-header leer (browser hat keine präferenz) wird die LanguagePriority-reihenfolge genommen
3.) gibt es keinen match (entweder gefordertes languagefile existiert nicht oder die vom browser geforderte extension existiert nicht), dann wird bzgl. index.html.* nach einem default-file gesucht (.html, .php,...)
4.) existiert die geforderte extension, aber kein languagfile dazu, dann sucht er einfach nach einem default-file -> 3.)

soviel zur theorie ;)

"back to the roots"
Post Reply