I need to redirect from:
to http://example.com/newfolder
But leave:
http://example.com/folder/subfolder
Where it is. Is this possible? I can't seem to make it happen without causing a heap of redirect chaos.
I need to redirect from:
to http://example.com/newfolder
But leave:
http://example.com/folder/subfolder
Where it is. Is this possible? I can't seem to make it happen without causing a heap of redirect chaos.
If
mod-rewrite
isn't enabled or you are unable to useRewriteRule
directive on your server, you can useRedirectMatch
directive of mod-alias which is the default module of apache httpd server.This will 301 redirect
/folder/
to/newfolder/
.I just ran into this and here's the solution I came up with. I prefer this method because it doesn't redirect any subdirectory.
Maybe:
This should redirect /folder to /newfolder but leave out /folder/subfolder
Which server are you using? You could for example use mod_rewrite if you use apache and do something like this
and put that in a .htaccess file in your /folder/ directory (assuming you can alter apache's settings, meaning you have the option AllowOverride All in that virtual host)
Here's some more info http://httpd.apache.org/docs/2.0/misc/rewriteguide.html
I've tried other methods here with mixed success. I am no Apache expert by any means, but here is the simple one-liner that works every time for me. I just use
RedirectMatch
instead ofRedirect
and include a very simple RegEx to end the match at or just before the trailing slash, meaning that subdirectories should never qualify as a match.RedirectMatch 301 ^/folder[/]?$ /newfolder
Jestep's answer above redirects "/root-directory" but fails to redirect "/root-directory/". This can be fixed and simplified by simply:
This will redirect "/folder" and "/folder/" but leave all sub-directories alone.