2014-09-06 3 views
1

J'ai ce code pour réécrire les répertoires 1 niveau de profondeur sur le serveur. Il ajoute une barre oblique finale / si elle n'est pas fournie.Réécrire les longues URLs pour avoir une barre oblique finale

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^.*[^/]$ /$0/ [L,R=301] 

qui travaille, mais comment si l'URL est plusieurs répertoires que je force des barres obliques de fuite profonde ....

http://example.org/words/more-words/1234/this-is-an-article 

comment puis-je faire toutes les URL (de longueur variable) ajouter une fuite /?

+1

Qu'est-ce que vous avez actuellement ressemble à cela fonctionnerait. Quel genre de sortie erronée voyez-vous? – CAustin

+0

@ CAustin quand j'utilise le format de lien d'exemple ci-dessus il chargera la page avec ou sans une barre oblique à la fin - je veux qu'il redirige vers la page avec une barre oblique si un utilisateur tente d'y accéder sans un – Crizly

Répondre

1

Vous pouvez remplacer votre règle avec ceci:

## Adding a trailing slash 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{THE_REQUEST} \s/+(.*?)[^/][?\s] 
RewriteRule [^/]$ %{REQUEST_URI}/ [L,R=301,NE] 
Questions connexes