How do you determine what technology a website is built on? [closed]

Quite often I come across a nice looking or functional website, and wonder what technology was used to create it. What techniques are available to figure out what a particular website was built with?

Few frameworks seem to include any kind of generator meta tag like web editors do. Are there any tell-tale signs of particular languages and/or frameworks?


Summary of answers

Site URLs may betray the framework and/or programming language but cannot be relied upon (e.g. file extensions such as .asp). HTTP response headers, cookies, stylesheets and source comments may also give clues.

Some nice tools for querying site details (no doubt there are many more):

  • BuiltWith
  • DomainTools
  • NetCraft
  • W3Techs
  • SimilarTech

Firefox addons:

  • Wappalyzer - CMS, frameworks/libraries, e-commerce, message boards etc.
  • Domain Details - IP, country and webserver details
  • Library Detector - Javascript libraries in use

Chrome Extensions:

  • Wappalyzer
  • SimilarTech
  • PageXray

Bookmarklets:

  • WTFramework - shows Javascript framework in use

Solution 1:

You could use http://builtwith.com to figure out which server and programming language was used. For example it told me that SO uses IIS7, google analytics, html4 and utf8.

If you want to know the framework...well that will probably not be possible just from looking at the site. Why don't you write them an email? ;)

Solution 2:

There are all sorts of things you can look out for, but it doesn't really give you any certainty as to the technology behind a site. In general, information like that is something people will want to hide, as the more information that is exposed the easier it might be for malicious parties to identify security vulnerabilities or denial of service holes.

If I was interested I'd probably look, in no particular order, at:

  • urls, and file extensions.
  • HTTP response headers
  • Source code for comments, or standard JS libraries

Incidentally, the tools mentioned in other answers are only looking at some of the above properties of the site for you, albeit automatically, and slightly quicker. :)

Solution 3:

I use 1 plug in for Firefox that gives me the IP and country for the hosting website and it's Web Server name called Domain Details, and for javascript framework I use WTFramework

I still need to wonder what script it was written on, but it is a start :)

Hope it helps.

P.S. the output will be something like this:

alt text http://img88.imageshack.us/img88/2505/200812282328ha0.png

Solution 4:

URLs can give a lot of clues, especially with Content Management Systems.

For example "http://abcxyz.com/node/46" looks a lot like Drupal.

Also many frameworks have standard JavaScript and CSS files they use.

Solution 5:

Some people might even deliberately obscure the technology they use. After all, it wouldn't take me long to tweak apache so that ".asp" actually ran perl scripts and put "powered by Microsoft IIS" into my footer despite the fact I used MySQL.

That way you'd spend all your time trying to hack my site using vulnerabilities it doesn't actually have.