Ergebnis 1 bis 3 von 3

Thema: [Gelöst] Mehrsprachigkeit über Subdomains

  1. #1
    Contao-Fan
    Registriert seit
    13.08.2010.
    Beiträge
    304

    Standard [Gelöst] Mehrsprachigkeit über Subdomains

    Hallo,

    dass ich zwei Startpunkte anlegen und beiden eine andere Sprache zuordnen kann, damit der Besucher anhand der Browsersprache zur richtigen Sprache geleitet wird, ist mir soweit bekannt. Aber ist folgendes auch möglich?

    Startpunkt 1 -> (www.)domain.com -> Fallback, Seite mit manueller Sprachauswahl
    Startpunkt 2 -> de.domain.com -> Sprache "de"
    Startpunkt 3 -> en.domain.com -> Sprache "en"

    Würde die automatische Sprachweiche so auch funktionieren, oder wie müsste ich zur Umsetzung dieser Version vorgehen?

    Bisher - vor Contao - hatten wir unter domain.com eine index.php mit
    Code:
    <?php
    
    if ($_SERVER["REQUEST_URI"] == "/") {
    
     $sprache = substr($_SERVER["HTTP_ACCEPT_LANGUAGE"], 0, 2);
    
     switch($sprache) {
    
    	case "de": $weiterleitung = "http://de.domain.com";		break;
    	case "en": $weiterleitung = "http://en.domain.com";		break;
    	default: $weiterleitung = "/language.html";
    
     }
    
    header("HTTP/1.1 301 Moved Permanently");
    header("Location: $weiterleitung");
    header("Connection: close");
    
    }
    
    ?>
    Allerdings ist ausführbarer PHP-Code in Contao-Artikeln ja nicht möglich...
    Geändert von NoName26 (26.06.2012 um 08:44 Uhr)
    Viele Grüße, TN

  2. #2
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    Hallo NoName26,

    Mit der aktuellen Contao Version kannst Du das alles mit Bordmitteln machen.
    Es gibt ja da auch die Option das Sprachkürzel in der URL anzuzeigen. Ob du das aber so wie du es oben erwähnst hinbringst kann ich dir nicht sagen.

    Was du aber kannst ist, einen alias machen der de.domain.com & en.domain.com heisst und auf dein Seiten root zeigt. Dann ist es möglich unter dem jeweiligen Seitenbaum, den DNS Einstellungen den Domainnamen einzutragen (bsp. de.domain.com). mit der domain.com machst du es so das du eine interne Weiterleitung auf en.domain.com machst und diese dann als Fallbackseite für EN definierst. So müsste es eigentlich funktionieren.

    Falls Du dann noch die www's auf die jeweilige domain geleitet haben willst, hast noch die Option der mod_rewrite Funktion in der .htaccess .. da gibt es ein auskommentiertes Beispiel wie die www Seite auf domain.com weiterleitest. Das kannst ja auch verwenden um von de.domain.com auf www.de.domain.com und www.en.domain.com weiterzuleiten.

    So kannst Du Dein PHP Weiterleitungs skript vergessen falls Du alles mit Contao umsetzen tust.
    Hoffe das bringt dich weiter.

    ciaobello


  3. #3
    Contao-Fan
    Registriert seit
    13.08.2010.
    Beiträge
    304

    Standard

    Leider hat o.g. Tipp nicht funktioniert, aber eine Lösung konnte ich heute endlich finden. Hier also eine

    Anleitung für die Mehrsprachigkeit über Subdomains

    Ziel
    Besucher sollen beim Aufruf von www.domain.com entsprechend Ihrer Browsersprache auf die richtige Subdomain weitergeleitet werden. Gibt es für die Browsersprache des Benutzers keine zugehörige Subdomain, soll unter www.domain.com die Sprache manuell gewählt werden können. Im folgenden werden beispielhaft de.domain.com und en.domain.com verwe

    Voraussetzungen
    3 Startpunkt für www.domain.com
    1 Startpunkt für die jeweilige Subdomain

    Einrichtung

    www.domain.com
    1. Startpunkt: Sprache "de" auswählen; Sprachen-Fallback nicht auswählen; Unter diesem Startpunkt eine index.de.html als Weiterleitung auf de.domain.com anlegen
    2. Startpunkt: Sprache "en" auswählen; Sprachen-Fallback nicht auswählen; Unter diesem Startpunkt eine index.en.html als Weiterleitung auf en.domain.com anlegen
    3. Startpunkt: irgendeine zuvor noch nicht verwendete Sprache auswählen ("Dies ist die Hauptdomain"); Sprachen-Fallback auswählen; Unter diesem Startpunkt eine index.html zur manuellen Sprachauswahl anlegen

    de.domain.com
    Startpunkt: Sprache "de" auswählen; Sprachen-Fallback auswählen ("Dies ist die Hauptdomain"); Unter diesem Startpunkt die deutschsprachige Seite aufbauen

    en.domain.com
    Startpunkt: Sprache "en" auswählen; Sprachen-Fallback auswählen ("Dies ist die Hauptdomain"); Unter diesem Startpunkt die deutschsprachige Seite aufbauen

    Etwas kompliziert, dieser Weg, aber er funktioniert
    Geändert von NoName26 (16.06.2012 um 09:03 Uhr)
    Viele Grüße, TN

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •