9

If I have:

redirect 301 /users/foo http://www.example.com/profiles/foo
redirect 301 /users/bar http://www.example.com/profiles/bar

Can I do something like?

redirect 301 ^\/users/(.+)$ http://www.example.com/profiles/$1

Edit

Found a solution:

RedirectMatch users/(.+) http://www.exapmles.com/profiles/$1 [R=301,L]

This actually redirects instead of rewriting.


Edit 2

See @Darth Android's solution with RewriteEngine which works just as well :)

0

1 Answer 1

13

Try using rewrite rules if you have apache:
RewriteEngine on
RewriteRule ^/users/(.*)$ http://www.example.com/profiles/$1 [R=301,L]

Note that you will need ModRewrite installed and enabled in your apache config. Pulled from here if you need a method for IIS.

6
  • I actually wanted to redirect, not just rewrite. Appreciate the help though :)
    – macek
    Jun 21, 2010 at 19:52
  • @macek I haven't tested it personally, but I'm under the impression that will redirect with a 301 code. I'll play around with it a bit. The [R=301,L] means to stop processing rewrite rules and issue a 301 redirect. Jun 21, 2010 at 19:54
  • ah, I didn't know you could use [R=301,L] at then end of a RewriteRule. Thanks for this :)
    – macek
    Jun 21, 2010 at 19:55
  • @macek I didn't either until about 30 seconds ago. This is why I come to this website to be entirely honest. Thanks for increasing my knowledge! :P Jun 21, 2010 at 19:58
  • I believe the first / on the RewriteRule needs to be removed for this to work as desired. (I had to remove it for it to work on my system.) With the first / removed, we're left with: RewriteRule ^users/(.*)$ http://www.example.com/profiles/$1 [R=301,L]
    – rinogo
    Nov 27, 2017 at 22:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .