Ergebnis 1 bis 2 von 2

Thema: "Page not found" bei Sprachwechsel auf einer Seite ohne Fallbacksprache

  1. #1
    Contao-Nutzer
    Registriert seit
    05.02.2010.
    Ort
    Chemnitz
    Beiträge
    30

    Standard "Page not found" bei Sprachwechsel auf einer Seite ohne Fallbacksprache

    Hallo zusammen,

    ich bekomme jedes mal wenn ich die Sprache auf einer Seite ohne Fallbackseite ändern will den oben genannten Fehler.

    Folgendes Szenario:

    Contao 2.11.9
    changelanguage 2.1.1 Build 6
    Die Sprache zur URL hinzufügen

    Dabei ist folgendes unerheblich:

    RewriteRules aktiviert oder nicht
    Domain in den Startseiten eingetragen oder nicht

    Als Seitenbaum bin ich folgender maßen vorgegangen:

    Code:
    de -> Startpunkt einer Webseite, Sprache: de, Sprachen-Fallback, Dies ist die Hauptdomain
        start
        unterseite
    Danach habe ich de kopiert und in folgendes umgeändert.

    Code:
    en-> Sprache: en
        home -> Fallback start
        sub -> kein Fallback ist so gewünscht
    Modul Sprachwechsler erstellt und eingebunden.

    Nun passiert folgendes:

    Sprachwechsel zwischen start und home funktioniert tadellos.
    (index.php)/de/start.html <-> (index.php)/en/home.html


    Sprachwechsel in unterseite bzw. sub erzeugt folgende Links:

    (index.php)/de/de.html -> von Englisch auf Deutsch
    (index.php)/en/en.html -> von Deutsch auf Englisch

    Eigentlich korrekt, da der entsprechende Baum korrekt gewählt wird. Nun passiert aber folgendes:

    In Zeile 2637 Controller.php soll mit $objPage->rootLanguage die Sprache hinzugefügt werden. Dieses Feld ist aber leer und auch in Zeile 951 Database.php in $this->arrCache[$this->intIndex][$strKey] nicht vorhanden.

    Daraus resultiert, dass folgernde Links erzeugt werden:
    (index.php)//start.html -> von Englisch auf Deutsch
    (index.php)//home.html -> von Deutsch auf Englisch

    was logischer weise in einem "Page not found" resultieren muss.

    Vielleicht hat von euch jemand eine Idee woran das liegen kann. Vielleicht habe ich auch einfach irgendwo ein Häkchen vergessen und das Problem ist ganz einfach zu lösen.

  2. #2
    Contao-Nutzer
    Registriert seit
    05.02.2010.
    Ort
    Chemnitz
    Beiträge
    30

    Standard

    So, da es funktionieren muss (zeitlich) und ich gestern Abend noch einen Thread gefunden habe, der sich mit einem ähnlichen Problem befasst und fast ein Jahr alt ist, habe ich folgenden nicht updatesicheren Fix bei mir eingebaut auf Zeile 2637 Controller.php:
    Code:
    if(!$lng = $objPage->rootLanguage) {
       $lng = $objPage->language;
    }
    $strLanguage = $lng . '/';
    Geändert von RiggerofRiV (26.03.2013 um 08:51 Uhr)

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
  •