Zum Inhalt springen

Mehrsprachigkeit mit mehreren Domains

Erstellt am 10. März 2006 · 6 Antworten · letzte Antwort am 11. März 2006

Tags: URLs & Routing, Server & Hosting, Frage

tstening ·

Hallo,

wir stehen hier vor folgendem Problem:

Eine fünfsprachige Webseite soll über fünf Länderdomains erreichbar sein. Alle fünf Domains zeigen aktuell auf Typo3. Die Domains stehen im Domainrecord von Typo3, d.h. egal, welche Domain ich im Browser aufrufe, wird derzeit die Webseite in der Standardsprache angezeigt.

Nun könnte ich ja für vier der Domains eine Umleitung im Domainrecord eintragen, d.h. domain.es leite ich dann weiter auf domain.de/es/, domain.fr -> domain.de/fr/ usw.

Der Kunde möchte jedoch, dass immer die aufrufende Domain im Browser sichtbar bleibt, d.h. eine Umleitung auf eine Standartdomain ist nicht erwünscht.

Nun kam mir die Idee, Apache zu konfigurieren, bin da aber nicht sonderlich fit drin. Man muss wohl ein wenig mit den RewriteConditions jonglieren, um eine Weiterleitung der folgenden Art hinzubekommen:

www.domain.de -> www.domain.de/de/
www.domain.fr -> www.domain.fr/fr/
www.domain.es -> www.domain.es/es/
usw.

Weiterhin sollte es auch möglich sein, bei manueller Sprachumschaltung per Sprachwähler, die Domain zu ändern, d.h. ich besuche gerade die deutsche Seite, entschieße mich aber nun auf französisch umzuschalten, dann sollte die Domain von .de auf .fr umspringen.

Für diesen Fall habe ich mir auch schon Conditions trocken überlegt:

RewriteCond ^/de/(.*) http://www.doman.de/de/$1
analog für fr, es, it, etc.

Wäre jemand so freundlich und klärt mich auf, wie man Apache konfigurieren muss, um das oben beschriebene Verhalten zu erreichen?

Oder hat jemand eine viel bessere Idee und kann mir die unter die Nase reiben? :p

Viele Grüße,
Tobias

tstening ·

Ok, das heisst, ich muss Conditions in der Art erzeugen:;

[hostname = domain.de]
// Tue hier was sinnvolles
[hostname]

Schlagt mich jetzt bitte nicht, aber was muss denn innerhalb der Bedingung stehen? Mir ist überhaupt nicht klar, wie ich nun Typo3 dazu bringe, aus domain.de z.B. domain.de/de/ zu machen?

Gruss, Tobias

theo ·

Beispiel:

[globalString = HTTP_HOST= *domain.de]
config {
 sys_language_uid = 1
 language = de_DE
 locale_all = de_DE@euro
}
[globalString = HTTP_HOST= *domain.com]
config {
 sys_language_uid = 0
 language = en_IE
 locale_all = en_IE@euro
}
[global]
tstening ·

Habe jetzt folgendes probiert:

[hostname = www.domain.de]
    config.baseURL = http://www.domain.de/de/
[global]

Da scheint nicht korrekt zu sein oder ich wende es einfach falsch an.

Gruss, Tobias

tstening ·
theo schrieb

Beispiel:

[globalString = HTTP_HOST= *domain.de]
config {
 sys_language_uid = 1
 language = de_DE
 locale_all = de_DE@euro
}
[globalString = HTTP_HOST= *domain.com]
config {
 sys_language_uid = 0
 language = en_IE
 locale_all = en_IE@euro
}
[global]

Ups, da warst Du schneller, als ich. :-) Danke für den Hinweis. Werde es gleich mal bei mir testen.

Viele Grüße,
Tobias

tstening ·

Es funktioniert perfekt. Danke Dir nochmals für diesen wertvollen Tipp! :p

Ich vermute mal vorsichtig, dass die andere Richtung auch irgendwie gehen müsste, d.h. wenn ich in meinem Sprachwähler eine andere Sprache auswähle, auch die Domain mit umspringt. Allerdings ist noch nicht klar, ob das überhaupt gewünscht ist.

Viele Grüße und ein angenehmes Wochenende,
Tobias