Hi im going to change my whole site so indexed urls will be changed too , the problem is i have about 4700 pages and i dont want to loose the traffic , theres the 301 redirection but it will take a lot of work since i have thousands of pages , any advices ? Thanks
You need to implement 301s. No other way to have your new pages get credit for the inbound links to your old URLs AND to have the old URLs in the index replaced with the new ones. But you will still lose traffic during the 1 or 2 month transition while the search engines are recrawling all of your inbound links, discovering the 301 for each inbound, and shifting credit for the old inbounds to the new URLs. If you have very few inbound links then it will probably go much faster. We have ~1,200,000 inbounds and we had recovered for the most part within 1-1.5 months. This is scary, I know. I just did this in Dec with an almost identical size PR7 commercial site. If you're running on Apache then Mod Rewrite is going to be your best friend. If you're on an IIS web server, I would purchase a copy of ISAPI Rewrite (almost 100% compatible w/ Apache's Mod Rewrite .htaccess and httpd.conf files). I posted about some things you should consider if you are redesigning your site on a thread just a few days ago. Just scroll down looking for my big blue avatar. It's like the 8th response I think.
Just do it and get it over with. One thing that I suggest, is that you submit a sitemap to google. I am going to guess that your using some kind of forum or CMS software? If your not already submitting a sitemap, I would get that setup, and then change your URLs. After the URLs have been changed, submit the site map (with the new URLs) to your google webmaster tools. This will help speed up the indexing of the new URLs. A few months ago I changed the URLs on my wordpress blog. It never missed a lick. Google grabbed the new URLs and my site never lost its ranking in its keywords.