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?
Druckbare Version
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]
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? ;)
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.
Anhang 6610
Hallo,
Fallback ist beim *Startpunkt einer Webseite*
Die Möglichkeit "Erste Seite" auszuwählen fehlt auch
Anhang 6611
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"
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?
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.
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.
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...? :D
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.
Hallo Andreas,
könntest Du in der Beschreibung von Changelanguage bitte noch TYPOlight in Contao ändern... ;-)
Danke schon mal im Voraus.
...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.
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?
Setze den Hacken für den "Sprachen-Fallback" zum Test nicht im englischen sondern im deutschen Seitenbaum. Dann änderst den Seitenalias der Startseite in "beiden" Seitenmäumen auf index (also von domain/en/home.html auf domain/en/index.html bzw. domain/de/index.html) und dann sag uns ob sich etwas geändert hat.
Das geht nicht. Der Seitenalias ist wohl unique, denn es kommt folgende Meldung:Zitat:
Dann änderst den Seitenalias der Startseite in "beiden" Seitenmäumen auf index (also von domain/en/home.html auf domain/en/index.html bzw. domain/de/index.html)
"Der Alias "index" existiert bereits!"
Da es sich nicht um einen "No root page found" Fehler handelt und auch nix mit der Erweiterung "changelanguage" zu tun hat, sollte ich wohl besser ein eigenes Thema aufmachen, oder?
Wie sieht denn bei Dir die Seitenstruktur aus, das index bereits existiert?
Ok, wenn ich das so umsetze funktioniert alles wunderbar. Schade, ich hatte gehofft einen Fehler reproduzieren zu können, welchen ich derzeit auf meinem System habe.
Dann versuch ich den mal zu beschreiben, vlt. könnt ihr mir ja ja schnell weiterhelfen und es ist kein Bug.
Ich habe Contao 2.11.3 und changelanguage 2.0.3 stable. Ich habe zwei Seitenbäume.
Baum eins (DE) - Fallback - Alias (baum-de)
- Startseite - Alias (startseite)
- Info - Alias (info)
- Galerie - Alias (galerie)
Baum zwei (EN) - Alias (baum-en)
- Home - Alias (home)
- Info - Alias (info)
Folgendes Verhalten funktioniert:
Ich bin auf der deutschen Info Seite und wechsel durch den changelanguage auf die englische Info Seite.
Folgendes Verhalten funktioniert nicht:
Ich bin auf der deutschen Galerie Seite und drücke nun auf changelanguage. Es gibt keine passende englische Seite. Das erkennt changelanguage auch wunderbar. Denn der Link hinter dem englisch Button von changelanguage sieht so aus:
http://domain.de/en/baum-en.html
Aber ich komme auf dieser Seite leider nicht an. Es kommt "Page not found" und die Adresszeile hat sich zu folgendem verändert:
http://domain.de//home.html
Das System wollte mich also auf die englische Startseite umlenken, hat dabei aber leider das Sprachkürzel verloren. Würde in der Adresszeile "http://domain.de/en/home.html" stehen, wäre alles super.
Was läuft hier schief?
Konntet ihr den Fehler reproduzieren?
Für mich stellt es sich so dar, als sei das No-root-page-found-Problem ein Core-Problem und keines von change-language. In meinem Fall tritt es dann auf, wenn ich die Option "Die Sprache zur URL hinzufügen" aktiviere. Zwar kann ich die Meldung über den Sprachenwechsler schnell sichtbar machen, indem ich von der ersten Sprache zur Zweitspreche umschalte, aber genauso erscheint sie auch, wenn ich die Spracheinstellungen des Browsers verändere oder die URL einer Zweitsprachenseite manuell aufrufe.
Dabei ist noch nicht einmal ausschlaggebend ob es sich um die Fallbacksprache handelt. EN bleibt bei mir immer "ohne Root-Page", wohingegen DE immer funktioniert, egal wo ich den Fallback setze. Wie gesagt: alles nur bei "Die Sprache zur URL hinzufügen".
Der Fehler betrifft nicht nur changelanguage, sondern auch DomainLink und sicherlich noch weitere Extensions. Aber seit der 2.11.3 ist dieser Fehler ja behoben.
Ich hänge mich hier mal an.
Es gibt zu meinem Problem schon einen Thread: https://www.contao-community.de/show...669#post201669
Ich habe schon einige Mehrsprachige Webseiten erstellt, allerdings will es bei dieser einfach nicht klappen.
Das Problem: Wenn ich mich auf der deutschen Seite befinde und in changelanguage auf en gehe, dann funktioniert das wunderbar. Sobald ich allerdings einen Menüpunkt der englischen Seite wähle, lange ich wieder auf der deutschen Seite.
Die Einstellungen:
Deutsche Seite: Sprachen Fallback gesetzt
Englische Seiten: Fallback zur passenden deutschen Seite jeweils gesetzt.
Blende ich deutsch aus und habe somit nur noch die englische Seite funktioniert die Navigation einwandfrei.
URLs umschreiben ist aktiv. Und hier die .htaccess der Webseite:
Code:##
# Contao Open Source CMS
# Copyright (C) 2005-2011 Leo Feyer
#
# Formerly known as TYPOlight Open Source CMS.
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation, either
# version 3 of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program. If not, please visit the Free
# Software Foundation website at <http://www.gnu.org/licenses/>.
#
# PHP version 5
# @copyright Leo Feyer 2005-2011
# @author Leo Feyer <http://www.contao.org>
# @license LGPL
##
<IfModule mod_deflate.c>
##
# Use mod_deflate to compress JavaScript, CSS and XML files. Do not add
# PHP and HTML files, because those have already been compressed by Contao.
##
<FilesMatch "\.(css|js|xml)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>
<IfModule mod_headers.c>
##
# Add a Vary Accept-Encoding header for the compressed resources. If you
# modify the file types above, make sure to change them here accordingly.
##
<FilesMatch "\.(js|css|xml|gz)$">
Header append Vary Accept-Encoding
</FilesMatch>
</IfModule>
<IfModule mod_expires.c>
ExpiresActive On
##
# Specify an expiration one week in the future for images, JavaScripts and
# CSS files (as recommended by Google Page Speed). Edit or remove the lines
# to set up your own expiration logic.
##
ExpiresByType image/png A604800
ExpiresByType image/gif A604800
ExpiresByType image/jpg A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/javascript A604800
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
</IfModule>
<IfModule mod_rewrite.c>
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]
##
# 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]
##
# Do not rewrite requests for static files or folders such as style sheets,
# images, movies or text documents.
##
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
##
# By default, Contao adds ".html" to the generated URLs to simulate static
# HTML documents. If you change the URL suffix in the back end settings, make
# sure to change it here accordingly!
#
# RewriteRule .*\.html$ index.php [L] # URL suffix .html
# RewriteRule .* index.php [L] # No URL suffix
# RewriteRule .*\.txt$ index.php [L] # URL suffix .txt
#
# If you are using mod_cache, it is recommended to use the RewriteRule below,
# which adds the query string to the internal URL:
#
# RewriteRule (.*\.html)$ index.php/$1 [L]
#
# Note that not all environments support mod_rewrite and mod_cache!
##
RewriteRule .*\.html$ index.php [L]
</IfModule>
Wähle ich den den Einstellungen: Die Sprache zur URL hinzufügen -> No root page found bei der englischen Version...
@johndoe
schon gelesen? https://www.contao-community.de/show...l=1#post207094
2.11.3 ist installiert. Geht trotzdem nicht.
Hallo Tristan, jetzt wirds spannend:
Bei mir (Contao 2.11.2) in der Datei system/libraries/Controller.php in Zeile 699 stand die kurze Fassung
Nachdem ich die Bedingung wie von dir erwähnt ergänzt habe, ist das "No Root Page"-Problem behoben. :eek:PHP-Code:
elseif (TL_MODE == 'FE')
Es tauchen allerdings noch Probleme auf, wenn ich über den Sprachumschalter zur Startseite einer anderen Sprache wechsele. Da verlinkt changelanguage mit dem Startpunkt der gewünschten Sprache (erkennbar am Alias). Das Ergebnis ist dann dummerweise eine Weiterleitung auf die zugehörige erste Seite unter Auslassung des Sprachenkürzels à la domainname.com//home.html statt domainname.com/en/home.html.
Das Problem habe ich auch hier beschrieben: ... Sprachenwechsler-in-Verbindung-mit-angehängtem-URL-Parameter
Hi,
habe genau das selbe problem wie "johndoe"... Sobald ich im eglischen Baum navigiere, und einen link anklicke, will er die deutsche Seite aufrufen...
Zu sehen hier: http://oberbrunn.dyndns.org/it/i-pia...el-palato.html
Bei mir kommt aber "Page not found" weil die Seite ja nicht im "it" Seitenbaum deutsch ist...
OMG meine Weiterleitungen der Hauptseiten (301) im "it" war noch auf "de".... peinlich.
Hallo,
ich nutze bei einem Projekt Contao Open Source CMS 2.11.2 und changelanguage und habe nicht
die Möglichkeit, auf 2.11.3 zu updaten.
ich habe deutsch als Hauptsprache und 3 zusätzliche Sprachen.
Der deutsche Seitenbaum ist mit Sprache "de" gekennzeichnet und als Fallback eingestellt.
Die Seitenbäume sind allesamt mit den jeweiligen deutschen Fallback-Seiten verknüpft.
Seitenalias sind entsprechend unterschiedlich zur deutschen Seite.
Sobald ich aber das Modul "changlanguage" irgendwie im Template unterbringe, wird die
gesamte Seite -> auch die deutsche -> nicht mehr gefunden, es folgt sofort der Fehler:
No root page found.
Auch eine manuelle Anpassung in Controller.php
elseif (TL_MODE == 'FE' && $objPage->type != 'root')
hatte keinen Erfolg.
Gibt es eine Workaround, wie ich auch ohne ein Update auf 2.11.3 das gelöst bekomme?
Danke
Mark
Warum kannst du kein Update machen?
Sagen wir mal so, das ganze wäre etwas umständlich - ich habe die Seite auf einem meiner Server gebaut, dann das komplette Paket an den Kunden gegeben und auf dessen Server habe ich keinen Zugriff.
Ich müsste also:
1. Die Daten von dort Anfordern
2. Datenbank Dump anfordern
3. alles bei mir einspielen
4. Update einspielen
5. Daten packen
6. Datenbank packen
7. Alles wieder hinschicken
8. der Kunde müsste es wieder einspielen + config anpassen
9. In der Zeit dürften keine Aktualisierungen stattfinden -> auch schlecht.
Machbar wäre es, aber es wäre mir lieber, wenn es anders ginge.
Mark
Oder eine Live-Update ID nehmen ;)
http://www.inetrobots.com/contao-live-update.html
Für ein Maintenance-Update sehe ich da absolut kein Problem.
Hallo,
habe gerade auf Contao 2.11.4 geupdatet - das klappte auch ohne Probleme.
Changelanguage als Modul auch nochmal neu installiert - der Fehler "No root page found" bleibt aber trotzdem
Der eine Seitebaum ist als Hauptdomain mit Fallback gekennzeichnet - drei andere Seitenbäume nicht.
Hat noch jemand eine Idee, wie ich den Fehler beheben kann - mittlerweile drängt die Zeit etwas
Danke
Mark
Hat sich erledigt, ich musste changelanguage wirklich nochmal ganz deinstallieren und dann neu installieren - so klappt es.
Mark
Hallo Allerseits,
dann will ich mein ersten Post gleich mal hier einwerfen. Ich bin auch gerade über das No root page found Problem gestolpert. Ich habe jedoch eine leere Contao 2.11.11 Installation kann also alle Erweiterungen schon mal ausschließen.
Also habe ich nochmal alle Einstellungen geprüft und das Problem gefunden. Beim meiner Installation lag der Fehler daran dass ich in meiner Rootseit in den DNS-Einstellungen einen falschen Domainname eingetragen hatte.
Kann also der Domainname vom Server nicht aufgelöst werden, kommte es unter Anderem eben auch zu dem Fehler No root page found.
Anhang 11275
@zzeroo
In diesem Fall ist die Meldung natürlich auch gewünscht und genau richtig. Trotzdem danke für den Hinweis, falls jemand das nicht weis und danach sucht ;-)
Zitat:
Zitat von zzeroo
http://de.contaowiki.org/No_root_page_found
Ich hatte das im Wiki schon ergänzt, jetzt ja sogar die Meldung auf Deutsch mit einigen Hinweisen.
Ich hatte das Problem beim meinem letzten Update von 2.9.5 auf 2.11.16 auch.
Die Seite ist mehrsprachig, läuft aber nur unter einer Domain, Changelanguage ist installiert, Fallback-Sprache ist Deutsch, Zweitsprache Englisch.
Beim Aufruf einiger deutschen Seiten im FE wurde mir dann "No root page found" angezeigt. Wenn ich changelanguage deaktiviert hab, konnte ich die Seiten aufrufen.
Was mir changelanguage nach dem Update nicht angezeigt hat (vielleicht auch nicht so ohne weiteres möglich), das für einige englische Seiten plötzlich keine deutsche Fallback-Seite mehr ausgewählt war. Das hab ich aber erst beim Seiten bearbeiten gesehen und nicht in der Seitenstruktur, in der changelanguage normalerweise schon die Meldung bei den betroffenen Seiten anzeigt. Also musste ich für diese Seiten die Fallback-Seite neu einstellen.
Trotzdem hatte ich eine Seite, die immer wieder den Fehler brachte, obwohl ich für die englische Seite die Fallback-Seite eingestellt hatte. Was da nur noch geholfen hat, war diese Seite in der Seitenstruktur zu kopieren und die alte zu löschen. Danach konnte ich die auch aufrufen.