Hallo Forum,
ich habe eine mehrsprachige Webseite (aktuell 4 Sprachen) mit der Extension cooluri (1.0.21). Das funktioniert wunderbar und die URL´s werden je nach Sprache so angelegt:
www.domain.de/startseite.html
www.domain.de/en/home.html
www.domain.de/fr/accueil.html
www.domain.de/es/casa.html
Die Übersetzungen mal bitte aussen vor lassen...
In der CoolUriConf.xml habe ich ein redirect auf eine Fehlerseite gemacht.
<behavior type="redirect">http://www.domain.de/fehler-404.html</behavior>
Und die Fehlerseite habe ich ebenfalls in allen Sprachen angelegt:
www.domain.de/fehler-404.html
www.domain.de/en/error-404.html
www.domain.de/fr/erreur-404.html
www.domain.de/es/error-404.html
Da die Fehlerseite real angelegt ist und im Header 200 zurückgibt, gebe ich hier mittels TypoScript explizit einen 404 Header aus.
page.config.additionalHeaders = HTTP/1.1 404 Not Found
Existiert eine aufgerufene Seite nicht, wird meine Fehlerseite www.domain.de/fehler-404.html mit Header 404 ausgegeben. Bis hier funktioniert das wunderbar.
Zu meinem Problem:
Wenn jemand z.B. auf der englischsprachigen Version unterwegs ist, wird er im Fall eines 404 auf die deutsche Fehlerseite geleitet. Was eigentlich auch logisch ist, denn in der CoolUriConf.xml wird ja explizit auf diese Seite und nicht auf die /en/error-404.html geleitet.
Hat jemand hier einen Lösungsansatz, wie ich zur Fehlerseite der aktuell gewählten Sprache leiten kann? Optimal wäre, wenn man z.B. direkt im XML pro Sprache die Fehlerseite definieren könnte.
<behavior type="redirect" lang="de">http://www.domain.de/fehler-404.html</behavior>
<behavior type="redirect" lang="en">http://www.domain.de/en/error-404.html</behavior>
<behavior type="redirect" lang="fr">http://www.domain.de/fr/erreur-404.html</behavior>
Ich schaue mal, ob man die Funktion pageNotFound in der link.Functions.php diesbezgl. anpassen kann. Besser wäre natürlich, wenn jemand einen Ansatz oder eine Lösung hätte, ohne in die Extension einzugreifen.
Danke schonmal für Eure Anregungen und Tipps.
-------------
TYPO3 4.5.0
PHP 5.2.0
