When viewing a website, it’s not always apparent if it’s static or dynamic. That’s because the differences lie not in the design, but back-end functionality. A static website is really just a collection of HTML files hosted on one domain. When you view the homepage, you’re looking at the actual homepage file (which may be aptly named as home.html, index.html, etc.) A dynamic website, on the other hand, consists of HTML pages generated on-the fly, or dynamically, using a server-side scripting language such as PHP.
So the pages we view on dynamic sites are all HTML files, the difference being that they were served up on our browsers after the server gathered the different bits and elements needed to form a cohesive page. The use of a scripting language to dynamically create content brings the massive advantage of separating content from page design, making it easier to add and modify content easily, as well as updating site design changes across all pages at once.
Virtually every web system today is dynamic – social networks, discussion boards, ecommerce sites, news sites, CMSs – the possibilities with a dynamic site can only be limited by your imagination.
Advantages of static sites:
Quick and cheap to build
Cheap to host
Disadvantages of static sites:
Updating requires knowledge of HTML / web development
Tedious to update design and content
Advantages of dynamic sites:
Easy to update content, which is stored in a database – no web expertise needed
Easy to update and implement design changes across all or selected pages
Can allow for collaboration (e.g. writing staff, audience contributions)
Interactivity – users can interact with the content; update it, share it, or get served with personalized content based on their preferences
Disadvantages of dynamic sites:
Cost more to develop
Cost more to host
Building a static website may be cheaper, but the benefits of having a dynamic website are far superior in the long run. It’s actually costlier trying to maintain a static website, since time and in-depth knowledge of HTML and CSS are needed. So unless you’re building a site with a handful of pages whose content and design will remain timeless, and user interactivity is completely unnecessary, you’d be better of with a dynamic website. A static site wouldn’t make much sense today anyway, considering the extremely easy to use open source CMSs that we have today.