5

I have already checked a lot of answers related to .htaccess redirecting, but yet I was unable to elaborate my problem:

I have an old website with blog entries addressed like this:

http://ellrohir.mzf.cz/index.php?page=blog&id=77

Now I also have a new website with "nice urls" where blog entries can be found using:

http://alois-seckar.cz/politics-blog/77

I want to "shut down" the old page and redirect any old links to new site. How to catch and transfer the old url to the new url? I still cannot figure the necessary .htaccess code up :(

1

2 Answers 2

5

Try this :

RewriteEngine on


RewriteCond %{QUERY_STRING} ^page=([^&]+)&id=([^&]+)$ [NC]
RewriteRule ^index\.php$ http://alois-seckar.cz/politics-%1/%2? [NC,L,R]

Empty question mark at the end is important to discard the orignal query strings from the destination url.

%n is part of the regex in RewriteCond, it's the part matched between ([ and ]+).

This rule will redirect

example.com/index.php?page=foo&id=bar

to

example2.com/politics-foo/bar
Sign up to request clarification or add additional context in comments.

1 Comment

This one is great!
0

you can redirect to another website using .htaccess

RewriteEngine on
RewriteRule ^/index.php?page=blog&id=(.*)?$ http://example.com /politics-blog/$1 [R=301,L]

1 Comment

for me, this one didn't do anything :(

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.