Dynamic vs Static Sites
This is a site-wide look at the same issue treated in the <querystring>
article in the On Page SEO section.
Dynamic Sites
Dynamic sites are great if you're the developer or content editor of a large,
rapidly changing web site. Small changes can be made that have a ripple effect
across the entire site, meaning less work, which is always nice. Fewer pages to
build and maintain means faster turn around on projects. For example, a dynamic
product page might mean that when a new product is entered into the database,
it automatically becomes available on the site, without any intervention by
developer of editor.
Dynamic sites/pages really come into their own when multiple (often thousands) of pages
follow the same basic template with differences only in the specifics of the content they display.
Again, a product catalog is a good example, where each page might follow the same
general pattern of Product name, Image, Description, Pricing, etc. Utilizing a single page
that populates the missing data dynamically based upon the querystring can save the
developer a huge amount of effort.
What we refer to as a dynamic site is in fact usually a hybrid, containing some static
pages and some dynamic pages.
Static Sites
Static sites are simple. Each page exists as seperate code and content and may
therefore be tweaked without effecting any other page. This is ideal if you
want to fine tune every aspect of the page for SEO or any other reason. The downside
is that you must maintain each page seperately, which may be
unfeasable in a large site.
A Historical View
In the past, search engine crawlers had considerable difficulty with dynamic
sites. Both the crawlers and the site design techniques employed were
less sophisticated than they are now. For example, crawlers often refused
to handle querystring parameters. These are name/value pairs that occur after
the "?" sign. This means that a site displaying 100 products on a
single dynamic product page, e.g.
http://www/mydomain.com/product.jsp?productid=1
http://www/mydomain.com/product.jsp?productid=2
etc, would have only one product indexed. The crawler would reject
all the other URLs as identical to the first, e.g..
http://www/mydomain.com/product.jsp
In fact, things were usually even worse, since it's unlikely that the above page would display anything sensible
at all when not supplied with the Product ID.
The Modern World
Things have improved. Although it is still possible to build a dynamic site
that confuses the crawlers, it is also possible to build one that they find
entirely acceptable. In fact, if you were willing to invest the time and
energy, it is possible to build a dynamic site that is indistinguishable (from
the perspective of a user) from a static one.
Let's be clear about what a crawler requires in order to be able to do it's
job. It requires that every page on your site is navigable by following a path
through plain HTML links from the entry page (usually, but not always, the
homepage).
The Verdict
Both dynamic and static sites are fine. You should make the choice of which to employ based
upon your needs. If you go the dynamic route, follow a few simple rules:
-
Page Names
- expend the extra effort to make your dynamic site run off unique page names, i.e.
make your URLs attractive to keyword hungry crawlers. "/AmazingWidget.aspx" is more attractive
to a crawler (and in turn to a user searching for amazing widgets) than "/Products.aspx?ProductID=1"
-
QueryStrings
- If you are going to use querystrings (and sometimes it is the right thing to do) expend the
extra effort to make your querystrings human readable. Similar reasoning to above: "/Products.aspx?Product=AmazingWidgets" is
more attractive than "/Products.aspx?ProductID=1".
|