Leerzeichen wird als %20 dargestellt .htaccess
Susann
- sonstiges
0 ritschmanhard0 Susann
1 wahsaga
Hi,
ich hab aus der Datenbank Links in der Form
abc.de/Grand Hand.html
nun werden sie im Browser zu
abc.de/Grand%20Hand.html
lieber wär mir natürlich
abc.de/Grand_Hand.html sauber und korrekt
in der .htacces krieg ich das nicht hin
bei "ä" klappt das mit
RewriteRule ^(.*)(ä|Ä|ä|Ä)(.*) /$1ae$3 [R=301]
bei Leerzeichen oder %20 geht es sber nicht - Server 500
jemand ne Idee?
Gruß
Susann
lieber wär mir natürlich
abc.de/Grand_Hand.html sauber und korrekt
bei "ä" klappt das mit
RewriteRule ^(.*)(ä|Ä|ä|Ä)(.*) /$1ae$3 [R=301]
Wie siehts aus (kenne nur das Problem mit regulärem Ausdruck ws in Perl...) mit:
RewriteRule ^(.*)([ ]*)(.*) /$1_$3 [R=301]
RewriteRule ^(.*)(\s*)(.*) /$1_$3 [R=301]
bei Leerzeichen oder %20 geht es sber nicht - Server 500
jemand ne Idee?
Gruß
Susann
Ne, leider nicht
lieber wär mir natürlich
abc.de/Grand_Hand.html sauber und korrektbei "ä" klappt das mit
RewriteRule ^(.*)(ä|Ä|ä|Ä)(.*) /$1ae$3 [R=301]Wie siehts aus (kenne nur das Problem mit regulärem Ausdruck ws in Perl...) mit:
RewriteRule ^(.*)([ ]*)(.*) /$1_$3 [R=301]
500er
RewriteRule ^(.*)(\s*)(.*) /$1_$3 [R=301]
ja, da macht er was komisches
abc.de/Grand%20Hand.html____________________
das hab ich auch schonmal zusammenbekommen - 20 Unterstriche angefügt
Fehler: Umleitungsfehler
Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann.
Ich kann natürlich auch im Skript die Leerzeichen rausbauen
$name1=str_replace(" ", "_" , $name1) oder so ...
aber das ist etwas komplex, und ich will da auch nicht überall / an 50 Stellen rumfummeln müssen...
hi,
ich hab aus der Datenbank Links in der Form
abc.de/Grand Hand.htmlnun werden sie im Browser zu
abc.de/Grand%20Hand.html
Wenn du es vernünftig machst, werden sie schon in deinem HTML-Code dazu - es ist _deine_ Aufgabe, Sonderzeichen in URLs zu kodieren, nicht die des Browsers.
lieber wär mir natürlich
abc.de/Grand_Hand.html sauber und korrekt
Dann ersetze bei der Ausgabe dieses Links das Leerzeichen durch einen Unterstrich.
in der .htacces krieg ich das nicht hin
Du denkst offenbar falsch herum.
mod_rewrite schreibt Anfragen, die vom Client kommen, serverintern in etwas anderes um.
bei "ä" klappt das mit
RewriteRule ^(.*)(ä|Ä|ä|Ä)(.*) /$1ae$3 [R=301]
Auch das ist die "falsche Richtung".
Vom Client sollte gar kein "ä" kommen, sondern ein %C3%A4 o.ä. - "ä" in UTF-8 URL-gerecht kodiert.
Oder eben schon bei Auslieferung des HTML-Dokumentes durch "ae" ersetzt.
bei Leerzeichen oder %20 geht es sber nicht - Server 500
Die komplette Herangehensweise scheint unsinnig.
gruß,
wahsaga