Matt Elhotiby
Matt Elhotiby

Reputation: 44066

301 redirect to get rid of the slash

Is there a way in htaccess to redirect all the pages from / to nothing. So for example i want this

http://somesite.com/something/ ==> http://somesite.com/something
http://somesite.com/another_thing/ ==> http://somesite.com/another_thing
http://somesite.com/page3/ ==> http://somesite.com/page3
http://somesite.com/page4/ ==> http://somesite.com/page4

page3, page4, something, another_thing are all directories with an index.php file in each... and this is how i handled it

in my htaccess i am getting rid of the / by this

DirectorySlash Off
RewriteCond %{REQUEST_FILENAME}/index\.php -f 
RewriteRule ^(.+)$ /$1/index.php [NC,QSA,L]

I basically want to 301 redirect just for seo reasons so everybody ends up on the non slash pages even if they are cached.thanks in advance

this

Upvotes: 0

Views: 202

Answers (1)

hakre
hakre

Reputation: 198118

If you want to remove trailing slashes from all requests that have them, try:

RewriteRule   ^/(.+)/$  /$1   [R]

See as well URL Rewriting Guide and look for Canonical URLs. Additionally please be aware of the documentation and security warning for the DirectorySlash Off directive.

Upvotes: 2

Related Questions