Wichtig ist hier nach Änderungen in der .htaccess oder php-Datei, immer erst den Browsercache komplett löschen! Das hatte ich anfangs auch nicht bedacht. Lokal unter Xampp muss auch der Apache gestoppt und dann wieder gestartet werden.Michael_G wrote: ↑Wed Nov 01, 2023 10:14 pmDanke für den Vorschlag, werde ich testen.olape wrote: ↑Wed Nov 01, 2023 1:13 pmVersuche es mal so:zuCode: Select all
header('Location: https://' . $_SERVER['HTTP_HOST'] . '/' . strtolower($url) . $params, true, 301);
Vielleicht geht das besser.Code: Select all
header('Location: https://' . $_SERVER['HTTP_HOST'] . '/' . $url . strtolower($params) , true, 301);
Aber, auch hier kann es Probleme geben, wenn i.e. Namen im Query weitergegeben werden.
-> ...&name=Meier&vorname=Max&... dann würde auch das in Kleinbuchstaben gewandelt.
Edit: funktioniert leider nicht.
Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“ Ludwig's XH-Templates for MultiPage & OnePage
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
OK, aber das soll ja mit der beschriebenen Änderung gar nicht funktionieren.
Das sollte doch aber mit der originalen php-Datei funktionieren.
Es ging ja gerade darum, Pfadangaben nicht zu ändern, sondern nur den QueryString.
Gruß Olaf, Plugins for CMSimple_XH
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Bevor wir hier lange rumrätseln, ein konkretes Beispiel/URL oder auch mehrere wären sehr hilfreich (@Michael_G).
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“ Ludwig's XH-Templates for MultiPage & OnePage
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Ohne das jetzt lang und breit getestet zu haben, als schneller Entwurf.
Einfach und ausschließlich diese Datei in /cmsimple/ ablegen.
Ist jetzt noch mit 302 zum Testen. Daraus müsste dann eine 301 gemacht werden.
aktueller Download
Einfach und ausschließlich diese Datei in /cmsimple/ ablegen.
Ist jetzt noch mit 302 zum Testen. Daraus müsste dann eine 301 gemacht werden.
aktueller Download
Gruß Olaf, Plugins for CMSimple_XH
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Vielen Dank! Das war es!
Beim Aufruf des CKEditors wird das wohl ebenfalls benutzt, aber man sieht davon nichts.
Hier die inzwischen getestete einwandfrei laufende Lösung mit Erklärungen:
Ausschnitt aus der .htaccess-Datei:
Code: Select all
#Script #1: URI in Kleinbuchstaben (Dateinamen unverändert) seit 26.03.2021
RewriteCond %{REQUEST_URI} !\.\w{2,4}$
RewriteCond expr "tolower(%{REQUEST_URI}) =~ /(.*)/"
RewriteRule [A-Z] %1 [R=301,L]
Code: Select all
#Script #2: Query-Strings in Kleinbuchstaben
RewriteCond %{REQUEST_URI} (de|en)?
RewriteCond %{QUERY_STRING} [A-Z]
RewriteCond %{QUERY_STRING} (.*)
RewriteCond %{QUERY_STRING} !=
RewriteRule (.*) $1%1 [R=301,QSD,L]
Zeile 1: URLs in Sprachen (de/en) werden erfasst, die passende zwischengespeichert in Variable $1. „?” für fehlenden Sprachordner.
Zeile 2: Script greift nur, wenn Großbuchstaben enthalten sind.
Zeile 3: Damit das Script sich nicht nur die Großbuchstaben schnappt und den Rest abschneidet (!), muss diese Zeile sein.
Zeile 4: Ausschlusskriterium! Wenn die URL ein „=” enthält, wird das Script nicht gestartet, stört also weder CKEditor noch Suche etc.
Zeile 5: Permanente Umleitung unter Berücksichtigung des Sprachordners.
Dabei „sammelt (.*) alles ein” und der Tag „QSD” entfernt den Query-String.
Auf diese Art entsteht eine Umschreibung des Query-Strings in drei Schritten:
Schritt 1: Entfernung des Fragezeichens aus der „URL”.
Schritt 2: Da es nun kein Query-String mehr ist, greift Script #1 und wandelt sämtliche Großbuchstaben um.
Schritt 3: Da ich mittels separatem Script Page Requests ohne „?” umwandle, wird auch diese URL schließlich wieder zum Query-String.
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Vielen Dank dafür, dass Du Dir Gedanken zu gemacht hast und für die Zeit.
Funktioniert so leider nur ohne Sprachordner.
Ich hatte auch schon die Idee, dass man das in einer userfunctions.php oder besser userprelude.php unterbringen könnte, aber mangels ausreichender PHP-Kenntnisse konnte ich das nicht umsetzen.
Meine Lösung für Apache-Webserver ist eher ein Workaround, da sie drei Redirects benötigt.
Deine fast optimale Lösung mit der userprelude.php ist plattformunabhängiger und kann nach Perfektionierung auch noch anderen helfen, die ebenfalls von „Normalschreibung” von URLs auf „Kleinschreibung” ändern wollen und wegen der Problematik noch warten.
Wenn Du jetzt noch weißt, wie man da den Sprachordner mit reinbringt, ist die Lösung perfekt!
Last edited by Michael_G on Thu Nov 02, 2023 9:16 pm, edited 1 time in total.
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Der Pfad war fehlerhaft, es fehlte ein / in der URL.
Hätte nur mit einem Menülevel fehlerfrei funktioniert.
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Siehe mein Profil, nennt eines meiner beiden Websites.
Und weil dank eurer Mithilfe Lösungen gefunden wurden, ist zumindest mein Workaround dort schon realisiert.
Sobald Olafs userprelude.php auch Sprachordner berücksichtigt, stelle ich darauf um. Dann braucht es für falsche Page Requests nur noch einen Rewrite (301) anstatt drei.
Hier noch ein Ausschnitt aus meiner .htaccess, diese Scripts stehen weiter unterhalb der hier diskutierten Abschnitte und fangen sämtliche Page Requests mit fehlendem Sprachordner oder fehlendem „?” ab und ergänzen sie.
Hilfreich für alle, die vor CMSimple_XH ein anderes CMS benutzt haben oder erst nachträglich auf Mehrsprachigkeit umstellen (wollen).
Code: Select all
#DE Sprache menüabhängig | seit 25.05.2023 | optimal: 17.09.2023
RewriteRule (neu|literatur|gastronomie|glossar|hilfe|ueber|datenschutz|impressum)/(.*) de/?$1/$2 [R=301,L]
RewriteRule (neu|literatur|gastronomie|glossar|hilfe|ueber|datenschutz|impressum)$ de/?$1 [R=301,L]
#EN Sprache menüabhängig | seit 25.05.2023 | optimal: 17.09.2023
RewriteRule (new|literature|gastronomy|glossary|help|about|privacy|legal)/(.*) en/?$1/$2 [R=301,L]
RewriteRule (new|literature|gastronomy|glossary|help|about|privacy|legal)$ en/?$1 [R=301,L]
#DE Sprache menüabhängig | QUERY_STRING | seit 28.05.2023 | optimal: 17.09.2023
RewriteCond %{QUERY_STRING} (neu|literatur|gastronomie|glossar|hilfe|ueber|datenschutz|impressum)/(.*) [NC]
RewriteRule ^$ /de/ [R=301,L]
RewriteCond %{QUERY_STRING} (neu|literatur|gastronomie|glossar|hilfe|ueber|datenschutz|impressum)$ [NC]
RewriteRule ^$ /de/ [R=301,L]
#EN Sprache menüabhängig | QUERY_STRING | seit 28.05.2023 | optimal: 17.09.2023
RewriteCond %{QUERY_STRING} (new|literature|gastronomy|glossary|help|about|privacy|legal)/(.*) [NC]
RewriteRule ^$ /en/ [R=301,L]
RewriteCond %{QUERY_STRING} (new|literature|gastronomy|glossary|help|about|privacy|legal)$ [NC]
RewriteRule ^$ /en/ [R=301,L]
Last edited by Michael_G on Fri Nov 03, 2023 6:29 pm, edited 1 time in total.
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Bei mir funktioniert das auch in Zweitsprachen ganz problemlos.
Gruß Olaf, Plugins for CMSimple_XH
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.
Re: Seitenabfragen mit Großbuchstaben in Kleinbuchstaben umwandeln
Ich habe es mal bei https://wiki.cmsimple-xh.org/ hinterlegt, da kann also jeder selber testen, ob es funktioniert.
Das sollte auch zu 99,9% behoben sein.
Das alles macht natürlich nur Sinn, wenn die URI wirklich nur korrekte Zeichen enthält.
Also [A-Z], [a-z], [0-9],/,-,_,+. Womit wir wieder bei einem anderen Thema wären.
You do not have the required permissions to view the files attached to this post.
Gruß Olaf, Plugins for CMSimple_XH
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.
Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.