Wenn ich diese "http://example.com/Hello%20There/" eintippe, zeigt es die Indexseite an, die ist: "http://example.com/Hello%20There/index.html".Nachlauf Schrägstriche Problem
Nun, was ich tun möchte, ist, wenn der Benutzer "http://example.com/Hello%20There" (so wie die erste, außer es hat keinen abschließenden Schrägstrich) eingibt.
Ich habe viele Dinge und besonders reguläre Ausdrücke versucht, aber nichts funktioniert, weil ich denke , dass der Server den Prozess reg exp stoppt, wenn er ein Leerzeichen findet ("% 20" in der URL).
Ich habe versucht, diese reg exp:
Options +FollowSymLinks
rewriteEngine On rewriteCond %{REQUEST_URI} ^(.*)\ (.*html)$
rewriteRule ^.*$ %1-%2 [E=space_replacer:%1-%2]
rewriteCond %{ENV:space_replacer}!^$
rewriteCond %{ENV:space_replacer}!^.*\ .*$
rewriteRule ^.*$ %{ENV:space_replacer} [R=301,L]
und auch setzen:
DirectorySlash On
im "mod_dir" Modul von Apache.
Also, meine Frage ist: - Wie an den Server anweisen, einen Schrägstrich, wenn der Benutzer eine URL ohne einen Schrägstrich zu addieren; $
Sie Klammern in der zweiten Rewrite-Regel verpasst. –
Bitte, welches ist die endgültige Kombination der zu verwendenden Regeln? Ich bin wirklich interessiert an dieser Frage, und ich kann es nicht richtig laufen lassen ... Danke –