Quando si digita questo "http://example.com/Hello%20There/", viene visualizzata la pagina indice che è: "http://example.com/Hello%20There/index.html".Problema trailing slash
Bene, quello che voglio fare è quando l'utente digita "http://example.com/Hello%20There" (così come il primo tranne che non ha una barra finale).
Ho provato molte cose e espressioni particolarmente regolari, ma niente funziona perché penso che il server interrompe il processo di registrazione quando trova uno spazio ("% 20" nell'URL).
Ho provato questo 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]
e anche mettere:
DirectorySlash On
nel modulo "mod_dir" di Apache.
Quindi, la mia domanda è: - Come dire al server per aggiungere una barra finale quando l'utente digita un URL senza una barra finale; $
Ti sei perso parentesi in regola secondo riscrittura. –
Per favore, qual è l'ultima combinazione di regole da utilizzare? Sono davvero interessato a questa domanda, e non riesco a farlo funzionare bene ... Grazie –