| 2:11 pm on Apr 19, 2013 (gmt 0)|
One approach is to choose a new URL naming scheme that will allow you to set up the 301 redirects with a few lines of regex in your .htaccess file. In other words, use a modification of the old URL scheme in some easily coded form.
| 4:43 pm on Apr 19, 2013 (gmt 0)|
How will google feel about so many 301īs. Is this going to be a problem for me?
| 5:27 pm on Apr 19, 2013 (gmt 0)|
I redirected 80 000 URLs to a new structure on a site last year. Traffic dipped for a short while then increased.
How you redirect depends on what the old URLs look like. You'll probably be better off rewriting requests to a PHP script that then looks up the new URL in a database table and then issues the redirect. It is important that the PHP script returns a 404 header for non-valid requests that manage to invoke the PHP script.
| 5:43 pm on Apr 19, 2013 (gmt 0)|
Would a PHP script be slower than a REGEX in the htaccess?
| 7:04 pm on Apr 19, 2013 (gmt 0)|
It depends what the old and new URLs look like.
If you use a single rule for all the pages, or all pages of the same type, mod_rewrite cannot put things into the new URL that aren't in the old URL.
If you need to redirect example.com/index.php?page=44 to www.example.com/44 then mod_rewrite can do it.
If you need to redirect example.com/index.php?page=44 to www.example.com/44-page-name then mod_rewrite cannot do it unless you make a rule for each page pair.
On the other hand, a PHP script can take in "44", look up "page name" in a database and generate the new URL that is sent in the redirect message.
| 8:12 pm on Apr 19, 2013 (gmt 0)|
There's one more option. KEEP all the old URLs, and simply rewrite-- not redirect-- to the new location. This is a good option if the old URLs are prettier than the new URLs, and the new CMS doesn't have a horribly complicated set of rewrites that you'd have to work around.