Hallo
Hab gerade festgestellt das es mit changelanguage 2.0.2 stable zu Problemen mit Contao 2.11 gibt, bei einigen Seiten wird folgender Fehler angezeigt "No root page found". Ist dies bei sonst noch jemanem so?
Hallo
Hab gerade festgestellt das es mit changelanguage 2.0.2 stable zu Problemen mit Contao 2.11 gibt, bei einigen Seiten wird folgender Fehler angezeigt "No root page found". Ist dies bei sonst noch jemanem so?
Oh, ich sehe erst jetzt das Feld "Fallback-Seite" wird gar nicht Angezeigt.
Außer changelanguage hab ich keine Erweiterung, und wenn ich diese Lösche kann ich die Seiten aufrufen ...
Ich kann das Problem mit "changelanguage" bestätigen, nachdem ich eben eine Testinstallation auf 2.11 aktualisiert habe.
Sobald ich die englische Seite aufrufe kommt No root page found. Nehme ich aber im Startpunkt der englischen Seite das Häkchen Sprachenfallback heraus geht es, aber das ist ja nicht der Sinn des Fallbacks.
Bei der Extension "offline" tritt das "No root page found" ebenfalls bei mir auf.
Hallo,
schaut euch einmal die .htaccess an, da hat sich auch etwas geändet.
alt..
##
# Activate the module
##
RewriteEngine On
##
# Set the RewriteBase if your Contao installation is in a subdirectoy and
# the rewrite rules are not working properly. Usage examples:
#
# RewriteBase /contao-2.9.0
# RewriteBase /path/to/contao
#
# Uncomment the following line to set the RewriteBase.
##
#RewriteBase /
##
# Contao usually does not pass absolute URLs via GET, therefore the
# following rules block all requests that try to pass a URL or the /etc/
# directory as parameter (malicious requests).
##
RewriteCond %{REQUEST_URI} (ftp|https?):|/etc/ [NC,OR]
RewriteCond %{QUERY_STRING} (ftp|https?):|/etc/ [NC]
RewriteRule .* - [F,L]
neu.....
##
# Activate the module
##
RewriteEngine On
##
# Change the RewriteBase if your Contao installation is in a subdirectoy and
# the rewrite rules are not working properly. Usage examples:
#
# RewriteBase /contao-2.11.0
# RewriteBase /path/to/contao
#
# Depending on your server, you might have to remove the line entirely.
##
RewriteBase /
##
# Uncomment the following lines and replace "domain.com" with your domain
# name to redirect requests without "www" to the correct domain.
##
#RewriteCond %{HTTP_HOST} ^domain\.com [NC]
#RewriteRule (.*) http://www.domain.com/$1 [R=301,L]
##
# The following rules are required if you want to pass the language as first
# URL parameter (added in Contao 2.11). The first rule rewrites an empty URL
# to the front end controller, the second one adds a missing trailing slash.
##
RewriteRule ^[a-z]{2}/$ index.php [L]
RewriteRule ^([a-z]{2})$ $1/ [R=301,L]
Beste Grüße
Steffen Richter
Danke für den Tip mit der .htaccess. Hat aber nichts damit zu tun, daß das Feld "Fallback-Seite" nicht angezeigt wird.
Es sind bei mir nicht alle Seiten, bei denen der Fehler "No root page found" auftritt. Ich vermute es hat damit zu tun das ich Contao Upgedatet und die Einstellungen von changelanguage jetzt anders sein müssen. Aber diese lassen sich ohne das Feld "Fallback-Seite" ja nicht ändern.
"No root page found" ist eine Meldung von Contao, darauf hat changelanguage keinen Einfluss. Kann es sein dass du die Seiten ausserhalb der Root-Seite platziert hast?
terminal42 gmbh
Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle
Sie befinden sich innerhalb der Root-Seite.
Es fehlt ja auch das Feld "Fallback-Seite"
Es hängt definitiv mit den Google Analytics Modul zusammen. Ohne dieses funktioniert es wunderbar.
Da müßte, wenn ich mich richtig erinnere, das Feld "Fallback-Seite" zu sehen sein.
startseite.png
Hallo,
Fallback ist beim *Startpunkt einer Webseite*
Die Möglichkeit "Erste Seite" auszuwählen fehlt auch
210.png
Hab changelanguage seit dem Update schon mehrmals deinstalliert und installiert. Die Daten bereinigen. usw.
Liegt es eventuell auch an diesem Eintrag in der neuen .htaccess? Er ist standardmäßig aktiv sobald man die neue htaccess einstellt.
PHP-Code:
##
# The following rules are required if you want to pass the language as first
# URL parameter (added in Contao 2.11). The first rule rewrites an empty URL
# to the front end controller, the second one adds a missing trailing slash.
##
RewriteRule ^[a-z]{2}/$ index.php [L]
RewriteRule ^([a-z]{2})$ $1/ [R=301,L]
Wenn ich dies auskommentiere geht 'Sprache zur URL hinzufügen' nicht mehr. Nehme ich dort den Hacken raus, sind die Seiten wieder aufrufbar. Installiere ich dann changelanguage, hab ich auf allen Seiten den Fehler "No root page found"
Geändert von Birden (16.02.2012 um 10:42 Uhr)
Ich hatte eben das Problem auch.
Bei mir war es eine Kombi aus dem Modul Offline-Plugin welches nicht mehr funktioniert und einem Problem mit der .htaccess Datei.
Diese Zeile
#RewriteBase /
ist nun nicht mehr auskommentiert und greift nun. Dies hat bei mir zu Fehlern geführt.
Ein Auskommentieren dieser Zeile wie oben brachte den gewünschten Erfolg.
Dank an RedWise wenn du nicht die neue und alte Version gegenüber gestellt hättest, hätte ich es nicht gesehen hab die neue Datei zwar schon durchgeschaut gehabt aber diese Zeile überlesen
Da ich keine weiteren Erweiterungen installiert habe, die ich hätte löschen können, auch sonnst alles nichts half, fand ich eine Lösung im Downgrad auf Contao 2.10. Es lebe die Systemsicherung.
Ich habe noch mal ein wenig ausprobiert und folgendes ist mir aufgefallen:
Ausgangssituation:
Startpunkt einer Webseite DE :
Erste deutsche Seite heißt home, Alias ebenfalls home - im Browser also home.html
Startpunkt englische Seite EN -> Sprachenfallback gesetzt.
Erste engl. Seite heißt auch home, Alias ist home_en – im browser also home_en.html
Wenn ich nun changelanguage aktiviere bekomme ich „no root page found“ sobald ich die englische Seite aufrufen will. Also so wie schon hier geschildert.
Wenn ich aber im deutschen Seitenbaum bei der ersten Seite (home) die Fallbackseite, also die englische Seite home einstelle dann geht es .
Ich hatte aber bei contao 2.10.4 dort immer „keine Seite“ wie bei allen anderen auch, so dass ein Klicken auf die englische Flagge immer die englische Startseite öffnete.
Diese Verhalten ist ja auch zu Erwarten , steht auch so in der Anleitung zu changelanguage. Vielleicht hilft mein Hinweis den Fehler zu finden.
LG
Bennie
Hat das Auskommentieren der Zeile
RewriteBase /
auch nicht geholfen?
Ich betreibe nämlich mehrere Installationen auf ähnlichen Systemen und alle hatten diesen Fehler egal ob -Erweiterungen installiert waren oder nicht.
Egal ob die Domain direkt auf Contao verwies oder man im Namen erst angeben musste (z.b.Domain.tld/Ordner.
Denn genau hier könnte ich den Fehler verstehen wenn als Base in der .htaccess / angegeben wird, aber im Contao Backend aber z.b. /Contao als Base angegeben ist.
Aber wie gesagt bei beiden hatte ich den Fehler bei beiden half das auskommentieren der Zeile.
Hab nur ein zweisprachiges Projekt, alle anderen sind Einsprachig. Bei den einsprachigen gibt’s keine Schwierigkeiten. Nur beim zweisprachigen, sobald changelanguage installiert ist, gibts die Fehlermeldung.
Contao liegt bei mir im Root-Verzeichnis. Hatte vom funktionierenden Contao 2.10.4.0 auf 2.11 aktualisiert. Auch die .htaccess tauschte ich durch die vom 2.11 aus.
RewriteBase / kommentierte ich zum Test jeweils, mal ein, mal aus, mal ein, mal aus.
Ohne changelanguage konnte ich es so Einstellen, daß alle Seiten aufrufbar waren. Selbst 'Sprache zur URL hinzufügen' funktionierte tadellos.
@Birden
Hast Du evtl. mal das probiert was ich zwei Posts vorher beschrieben habe? Bei mir geht es dann, obwoh es eigentlich anders sein müsste.
In der Anleitung zu changelanguage steht ja u.a. folgendes :
Wenn es kein direktes Gegenstück gibt, wählen Sie "Keine Seite". Der Besucher wird dann beim Wechsel auf die Startseite geleitet.
Genau das geht bei mir eben nicht seit contao 2.11.
Ich erinnere mich schon gleich nach dem Update ohne Erfolg versucht zu haben, den Sprachenfallback anders zu setzten. Aber wie schon erwähnt, nachdem alles nichts half machte ich ein Downgrad auf Contao 2.10, jetzt laß ich es fürs erste so. Kommt Contao 2.11.1 heraus, werde ich einen neuen Versuch in Angriff nehmen. Und wer weiß was bis dahin ist, da kann sich an changelanguage auch noch was ändern.
Ich kann mir nicht vorstellen was changelanguage damit zu tun hat, denn damit wird die URL nicht verändert. Die einzige Funktion welche changelanguage hat, ist das Modul welches den Wechsel erlaubt (und dazu die Einstellung der Seiten berücksichtigt). Du hast nicht zufällig noch andere Erweiterungen (z.B. folderurl!) installiert?
terminal42 gmbh
Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle
Ich habe genau das gleiche Problem.
Meine Seitenstrutkur sieht wie folgt aus
EN (Haupteinsprungspunkt einer Webseite):
- Home (Hat als Fallback Start von DE eingetragen)
- Others (Hat als Fallback keine Seite eingetragen)
DE (Fallback Language, Haupteinsprungspunkt einer Webseite):
- Start
- Anderes
Klicke ich in der deutschen Version auf Start, funktioniert alles einwandfrei. Klicke ich nun auf Anderes in der DE Version wird das No-Root-Page found ausgegeben. Anscheinend dürfte es hier Probleme bei der Verlinkung untereinander geben, sodass er nicht das Home von EN findet. Mit anderen Worten er findet keine URL die von der Seite Anderes auf die englische Version umschaltet und somit kommt diese Fehlermeldung (wäre zumindest für mich so logisch).
Weiß jemand wie ich das Beheben kann? Also das das Changelanguage-Modul wieder korrekt funktioniert? Die eine Variante wäre auf Contao 2.10.4 downzugraden, was ich aber gerne vermeiden würde.
Habe das gleiche Problem
Es betrifft nur eine! Seite in der Fallback Sprache FR
No root page found bei aktiviertem changelanguage
Ohne changelanguage klappt alles reibungsfrei, hilft bei einer dreisprachigen Webseite aber nicht weiter
Habe weder googleanalytics noch folderurl installiert
Wir haben auch auf allen Seiten mit mehreren Sprachen das gleiche Problem: mit Sprachenwechsler aktiv -> "no root page found".
Sobald man "Sprachenfallback" deaktiviert, werden die Seiten angezeigt, aber der Wechsel zur anderen Sprache klappt nicht, sondern führt immer auf die Startseite.
Alle o.g. Lösungsversuche brachten leider keinen Erfolg.
Ich hab soeben den Fehler in changelanguage gefunden und behoben. https://github.com/aschempp/contao-c...50b456f3a78362
Wir müssen noch ein paar andere Dinge beheben, aber diese Woche sollte das Update kommen.
terminal42 gmbh
Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle
Hallo zusammen,
habe das Problem auch und ich denke es liegt nur symtomatisch an den Modulen. Die Ursache ist meiner Meinung nach die Methode "getPageDetails" in der Controller.php. Wird dieser als Übergabe-Parameter die Root-Id übergeben, landet man im folgenden elseif-Block:
Da die Root-Seite von einigen Modulen genutzt wird, um "root-spezifische"-Parameter zu konfigurieren, z. B. die Google-Analytics-Id, sind alle Module Betroffen, die versuchen über die getPageDetails-Methode Root-Parameter auszulesen.Code:// No root page found elseif (TL_MODE == 'FE') { header('HTTP/1.1 404 Not Found'); $this->log('Page ID "'. $objPage->id .'" does not belong to a root page', 'Controller getPageDetails()', TL_ERROR); die('No root page found'); }
So führt bspw. folgende Implementierung
zu einem "No root page found".Code:$objRoot = $this->getPageDetails( $this->getRootIdFromUrl() );
Jetzt können natürlich die Module entsprechend angepasst werden und z. B. das Root-Element dirkekt aus der DB ziehen, aber besonders sinnvoll wäre dies nicht. Ich würde vorschlagen, dass dieses Fehlverhalten direkt in der getPageDetails-Methode in der Controller.php abgefangen werden sollte.
Grüße
Steffen
Ich habe den Fehler auch schon festgestellt. Ich gebe dir recht dass das Core-Verhalten problematisch ist. Allerdings kann das auch jede Erweiterung lösen, denn getPageDetails auf einer Root-Seite auszuführen ist einfach sinnloser Overhead.
terminal42 gmbh
Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle
Hallo zusammen,
scheinbar scheint das Problem ja anhand des Diskussionsverlaufs ja gelöst, aber ich hab es immer noch nicht gecheckt...
Ich habe eine zweisprachige Seite DE+EN, möchte dass "der Italiener" die DE Seite bekommt (Fallback).
htaccess ist aktiviert, mod_rewrite läuft, sprachenkürzel wird in der URL mitausgegeben.
SO jetzt meine Seitenstruktur:
Baum 1 DE
- Seite 1
- Seite 2
- Seite 3
- Seite 4
- Seite 5
Baum 2 EN
- Seite 1 (Fallback DE Seite 1)
- Seite 2 (Fallback DE Seite 2)
Wenn ich nun die Seite 3 DE aufrufe, erhalte ich no root pages found, gleiches für alle DE Seiten, die kein EN Pendant haben.
Wieso muss die DE Fallback Seite überhaupt ein EN Pendant haben (ist doch eigentlich nur andersherum logisch...)
Wer kann mir mal erklären, was ich immer noch falsch konfiguriert habe...?
Viele Grüße
Thomas
Hier die Änderung von Github für nicht-Programmierer als .rar-File. Einfach entpacken und in den Contao-Root kopieren:
http://www.web-n-design.de/tl_files/...nguage-fix.rar
Ich habe die neue Version eben online gestellt.
terminal42 gmbh
Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle
Hallo Andreas,
könntest Du in der Beschreibung von Changelanguage bitte noch TYPOlight in Contao ändern... ;-)
Danke schon mal im Voraus.
Joachim
*** Kein Backup, kein Mitleid ***
...ist das Thema wirklich schon behoben?
Also ich habe gerade Contao auf Version 2.11.2 und changelanguage auf 2.0.3 aktualisiert und das Problem besteht immer noch in der selben Weise, wie von Thomas toelsen weiter oben beschrieben.
Grüße
Andreas
PS: sobald ich changelanguage deaktiviere funktionieren die Seiten wieder, sonst habe ich keine Erweiterungen installiert.
Geändert von AndreasKuhn (29.03.2012 um 15:58 Uhr)
Das ist eigentlich ein Contao Fehler.
https://github.com/contao/core/pull/4059
...nehme meinen obigen Beitrag wieder zurück! Deinstallation und Wiederinstallieren von changelanguage mit den dazugehörigen database-Updates hat das Problem bei mir behoben.
Danke
Andreas
Hey alle zusammen,
ich musste gerade feststellen das es bei Contao 2.11.3 immer noch Probleme mit der Root Page gibt.
Wenn man einen Seitenbaum anlegt, die Sprache auf "en" einstellt, ein fallback einstellt, den alias auf home setzt und unter den Einstellungen "Die Sprache zur URL hinzufügen" einstellt und dann im Frontend "domain/en/home.html" aufruft funktioniert alles wunderbar. Ich werde auf die Startseite geleitet und die Url beinhaltet nur noch "domain/en/"
Wenn ich nun aber einen zweiten Seitenbaum anlege und ihm die Sprache "de" gebe und den alias "startseite" und noch einmal "domain/en/home.html" aufrufe, so bekomme ich als Ergebnis:
Page not found
Das Ganze habe ich gerade auf http://demo.contao.org getestet.
Habe ich etwas falsch gemacht?
Gruß
Robert
Wenn du es in der Online-Demo nachstellen konntest, ist es wohl ein Problem in Contao und nicht in changelanguage?
terminal42 gmbh
Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle
Aktive Benutzer in diesem Thema: 2 (Registrierte Benutzer: 0, Gäste: 2)