Several in the SEO world have long questioned the necessity of re-writing dynamic URLs, those that pull content from databases into static URLs that appear to end with a finite .php / .asp / .html / .cfm etc. A dynamic URL is often criticized by search engine optimizers because of the difficulties search engines have had indexing and reading them in the past.
At this time, however, Yahoo!, Bing, Google & Teoma all have dynamic pages in their index and in the top search engine result pages for many different searches. It would seem the issue with search engines has degraded. However, the usability matter of dynamic URLs still exists. From a user’s point of view a URL in the form of http://www.site.com/page.html is considerably friendlier than a URL written as http://www.site.com/page.php?ID=2&TAGformat=945bb399ls3.
No matter if it’s posting the URL to a website, sending it in an email, or save it on a notepad for later, the dynamic URL is something that is definitely unfriendly for users. The advantages of mod_rewrite and other tools that permit for the conversion of dynamic URLs into static ones may be lessened by the new abilities of the search engines, but they are not altogether gone.
I could have sworn that someone has already a great post or forum thread on this topic, but I can’t seem to find it (no matter how advanced my operators). I’m sure Mr. Malicoat has it in his bookmarks, but since blog posts are one of my personal systems for public bookmarking, here goes.
Eleven Guidelines to Successful URLs
- Describe Your Content
An obvious URL is a great URL. If a user can look at the Address bar (or a pasted link) and make an accurate guess about the content of the page before ever reaching it, you’ve done your job. These URLs get pasted, shared, emailed, written down, and yes, even recognized by the engines.
- Keep it Short
Remember always; brevity is a virtue. The shorter the URL, the easier to copy & paste, read over the phone, write on a business card, or use in a hundred other unorthodox fashions, all of which spell better usability & increased branding.
- Static is the Way & the Light
Not to bring religion into this, but I can tell you with certainty that some of the engines absolutely DO treat static URLs differently than dynamic ones. And no human likes a URL where the big players are “?,” “&,” and “=.”
- Descriptives are Better than Numbers
If you’re thinking of using 114/cat223/, go with /brand/adidas/ instead. Even if the descriptive isn’t a keyword or particularly informative to an uninitiated user, it’s far better to use words when possible. If nothing else, your team members will thank you for making it that much easier to ID problems in development and testing.
- Keywords Never Hurt
If you know that you’re going to be targeting a lot of competitive keyword phrases on your website for search traffic, you’ll want every advantage you can get. Keywords are certainly one element of that strategy, so take the list from marketing, map it to the proper pages, and get to work. For dynamically created pages through a CMS, create the option of including keywords in the URL.
- Subdomains Aren’t the Answer
First off, never use multiple subdomains (e.g., siteexplorer.search.yahoo.com) – it’s unnecessarily complex and lengthy. Secondly, consider that subdomains have the potential to be treated separately from the primary domain when it comes to passing link and trust value. In most cases where just a few subdomains are used and there’s good interlinking, it won’t hurt, but I wouldn’t take the chance. To me, the benefits derived from reputation management (by flooding the SERPs with your subdomains) are minimal compared to the potential loss of link/trust juice. I also think that subdomain takeovers of SERPs is not something the search engines see as beneficial to their users and may shut down at any point. Luckily, if you’re doing it now, you can always 301 to the main domain.
- Fewer Folders
A URL should contain no unnecessary folders (or words or characters for that matter), for the same reason that a man’s pants should contain no unnecessary pleats. The extra fabric is useless and will reduce his likelihood of impressing potential mates.
- Hyphens Separate Best
When creating URLs with multiple words in the format of a phrase, hyphens are best to separate the terms (e.g. /brands/dolce-and-gabbana/), followed (in order) by, underscores (_), pluses (+) and nothing.
- Stick with Conventions
If your site uses a single format throughout, don’t consider making one section unique. Stick to your URL guidelines once established, so users (and future developers) will have a clear idea of how content is organized into folders and pages. This can apply globally as well for sites that share platforms, brands, etc. Re-inventing the wheel in situations where reliance on convention makes everyone’s tasks easier is folly.
- Don’t be Case Sensitive
Since URLs can accept both uppercase and lowercase characters, don’t ever, ever allow any uppercase letters in your structure. If you have them now, 301 them to all-lowercase versions to help avoid confusion. If you have a lot of type-in traffic, you might even consider a 301 rule that sends any incorrect capitalization permutation to its rightful home.
- Don’t Append Extraneous Data
There’s no point to having a URL exist in which removing characters generates the same content. You can be virtually assured that people on the web will figure it out, link to you in different fashions, confuse themselves, their readers and the search engines (with duplicate content issues), and then complain about it.
The following are some grievously heinous violators of the guidelines above:
Target (who’s powered by Amazon) doesn’t describe their content, use keywords, or keep it short. That and the horrifyingly useless data that can be removed from the URL without changing the content make this URL downright ugly.
Despite being one of my favorite sites, Etsy’s URLs provide no descriptive information, use multiple dynamic parameters and separate breaks with underscores.
Google should be ashamed – their guidelines for URLs practically set the town for the recommendations, but their maps feature is almost unusable due to inefficient, bloated URLs (when they must know that millions want to copy those URLs into emails)
These few below are doing a considerably better job, but could still go the extra mile:
It’s almost there, and one could almost argue that the subdomain use here is justified for branding purposes. It is too bad they gave us so much data, but then cut out keywords and descriptives right at the end
Nasa has uselessly appended dynamic parameters onto the page, and added /home/index.html for no logical reason
- http://www.newyorkmetro.com/fashion/fashionshows/2007/spring/ main/newyork/womenrunway/marcjacobs/
They’re trying to be descriptive, which is great, but not separating words and going 7 folders deep is really pushing it.
These last examples have done nearly everything right:
Brilliant – it’s short, descriptive, static and obvious.
Despite the subdomain, everything else is near perfect.
I’m letting the White House off the hook for not using “john-kennedy” as the page title, because they’ve wisely also provided his number (the US’ 35th President).
URLs seem like one of the most simplistic parts of SEO, but I find myself returning to this issue with nearly every client. Hopefully these guidelines can help a few folks make use of best practices before it becomes an issue down the road.
There is a misconception related to dynamic websites that dynamic websites are not search engine friendly or they can’t have good positions in major search engines. This is absolutely wrong, dynamic websites can have better and more controlled positions in search engines comparatively than static websites.
What is a dynamic website?
A dynamic website is database driven website in which parts of the content are generated by Server Side Programs/ Middle Tier.
Dynamic webpage doesn’t physically exist as a file/document on (hosting) server, unless the request comes for a webpage. The request contains parameters, user identities, date & time, context etc.
Problems with Dynamic Websites according to Search Engines
This is true that search engines are not good at reading dynamic web pages, but there is always a solution for any problem, first you need to understand that why search engines are unable to read dynamically generated websites? What hurts them not to read dynamic web pages?
- Dynamic webpage doesn’t physically exit on server
- Dynamic website has complex URLs such as “ http://www.wahidqazi.com?name=value&blabla%blabla@session_id@2226897&blabla=77
- Search engine bots/crawlers usually have difficulty in reading these characters “?”, “=”, “@”, “%”, “$”, “*”, “&”, “!” in URLs
- Search engine usually considers dynamic website as group of never ending links
- Search engine bots/crawlers might get stuck in an infinite loop, specially if the dynamic webpage has session id
Tips to Optimize Dynamic Websites
Now you know what hurts search engine bots/crawlers to index your website? What you need to know is that how you can keep your valuable website indexed by search engines, the more your web pages are indexed the better your website will impress search engines
- Create an HTML sitemap with 100 text links or less. If you have more than 100 links, break the sitemap into more than one web pages
- Google Sitemap will also be an advantage, specially if your website is big and dynamic
- Get inbound links deep into your website from other relevant websites such as directories, classified directories, vertical industrial portals
- Convert dynamic web pages into static web pages with the help of URL re-writing techniques
- You can use some plug-in applications that will change your existing dynamic URLs into static ones, specially for shopping carts there are plenty of applications available
- Avoid using session IDs in the URL, specially when user has not logged in
- If you do need to include parameters, limit it to two and limit the number of characters per parameter to ten or less
- If you do have small dynamic website and enough time you can apply this technique. Just right click on page by page of you website, copy the source code and create new static page with .htm or .html extensions
URL Rewriting Techniques and Tools
A rewrite engine is a piece of web server software application that is used to modify URLs before fetching the requested items for a variety of purposes.
Rewrite Engine for Apache HTTP server:
Apache HTTP server has a rewrite engine called mod_rewrite, which has been described as “the Swiss Army knife of URL manipulation”
Rewrite engines for Microsoft’s Internet Information Server (IIS):
- IISRewrite from Qwerksoft
- ISAPI_Rewrite from isapirewrite.com
- URL Replacer from Motobit
- Ionic’s ISAPI Rewrite Filter (IIRF) (open source) from Ionic Shade
Rewrite HttpModule for Microsoft ASP.NET:
Rewrite engine for Java 2 Platform, Enterprise Edition (J2EE) Servlet container servers:
- Apache Tomcat, Resin, Orion etc)
- HttpRedirectFilter (open source)
- UrlRewriteFilter (open source) – allows you to rewrite URLs before they get to your Servlets, JSP’s, Struts etc
- URL Rewriter (open source – LGPL) – URL Rewriter is a tool for rewriting URLs in Java Servlets. It is similar to mod_rewrite
Dynamic websites are not impossible to optimize, it’s just a small fine tune that you need to keep in mind when developing a dynamic website, if you can understand the problems search engine bots/ crawlers have to face when crawling your website, you can better prepare your website, so that search engine bots/crawlers can easily index your valuable website.