I had a post the other day about how to make search engine friendly URL’s using coldFusion. I had a comment that asked “Is it still necessary to remove the “?” and other symbols from CF code so search engines can read them?” Instead of answering with a comment I thought I would create a post about it. The simple answer is no. Google and the other top search engines have figured out how to do deal with dynamic URL’s. There are many sites that rank well using them. Having a “?” or “&” in your URL is not considered a negative or a positive by the search engine algos. What they do have a problem with is session ID’s. Do not use those.
At the same time having “?” and “&” in your URL can affect your ability to rank for keywords. Not because of the ranking algo but because of how it affects other factors. The first factor is that a messy long URL is less likely to get somebody to link to it. The second factor is if you ever decide to change your server side language you might want to change your URL’s. You don’t have to do this but a lot of people feel like they have to change the URL suffix.
It is best to try to keep your url’s as short as possible. This may require a little more work but it will be worth it. Don’t put anything in the URL if it can be assumed. Like some people will put states.php?country=us&state=tx. I would change that to just /state/tx/ or just /tx. If you are doing something like index.php?category=11&subcat=pirates you could change that to use /11/pirates/ or just /pirates/. Of course be careful not to assume so much that it causes problems as you grow. Also if you have a site that most of the data is in the database there is no reason to create so many files. You can have a huge website with just one file or just a few if you do the URL’s correctly.
[tags]SEO, search engine optimization, search engine friendly urls, URL, dynamic url, coldfusion, asp, asp.net, php[/tags]