Claim: Using the mod_rewrite feature of Apache-based Web hosts to change php and other dynamic URLs to
imitation static html urls will help search engine positioning and help get pages listed in search engines.
Most popular Content Management Systems (CMS), at least the older ones, generate php files with long file names and
meaningless identifiers. such as mystore.com/products/cat/product.php?cat_id=S12420425659
Sometimes the URL address can be very very long. It certainly contains little or no useful information about the
content of the web page and if it is very long, it may be blocked by search engines because such URLs evidently can
create endless loops for spiders.
These pages are called "dynamic" because there is no physical ("static") file corresponding to that address in the
Web server. The file is generated on the fly - it is assembled by a script from a database record which makes the html.
In the early days, search engines did not index these pages. They were made for html. The Google spider can now
follow ?queries in php and similar URLs and presumably so can most other search engines. However:
1- Search engines may spider such pages more slowly because they assume the site is very large. If they went through
the pages at top speed, they could overload your server supposedly and cause it to crash.
2- Search engines (particularly Google) may class dynamic php pages as "dynamic content" and assume that they change
a great deal. Such pages will get lower positioning for a keyword, because the search engine has no confidence that the
content won't change. Today the page is about widget covers, tomorrow it might be about gremlin poison.
3- The path and URL have no information that helps the search engine to assign particular keyword content to the
page.
4- It is a fact that very few php pages or pages with long URLs are generally to be found among the top pages listed
for a keyword.
The mod_rewrite trick allows the Web master to change the long url into an address that looks like the address of a
static URL such as mystore.com/green_widget.html
An explanation of how to convert dynamic URLs from php and other sources to imitation static URLs is given here. Some
Web logs and CMS have ready made scripts or plugins that will do the conversion right out of the box more or less.
The consensus of many Web masters is that the conversion is worthwhile. It improves both listing of pages and
ranking. One drawback - if you have a lot of existing dynamic pages that are already listed and accumulated
Google Pagerank, do not delete those URLs when you make
the new ones, because the new pages will have 0 pagerank of course. If there is a penalty for duplicate content, you may
have to live with it.
On the other hand, there are free Web logs that can create actual static html with meaningful filenames, and there
are CMS systems that do that as well. Therefore, there is probably no reason to make do with this clumsy workaround of
fake static html pages, which can only work on an apache server and only if the Web host service allows you to modify
the .htaccess file. Mambo is a free content management system that advertises "search engine friendly" URLs.
Bricolage is a free CMS system that actually
generates static html or XML output. Bricolage has gotten excellent reviews and it uses Perlscript rather than PHP.
Perlscript is more secure against hacker attacks. Interactive Tools sells a CMS that is probably better documented and
supported than Bricolage or Mambo and doesn't require as much technical "heavy lifting." It seems to generate
php files with meaningful names, rather than actual static html. A disadvantage of Bricolage is that currently it uses the PostgreSQL database, which is not
supported by most Web hosts. However the latest release, scheduled for summer of 2008 will support MySQL.
A non-negligible problem of php-based and MySQL systems, especially popular ones, is that they are vulnerable to
malicious hacking.
More Search Engine Optimization Superstitions
Online Search Engine Optimization Handbook