Web Server Stats

Ever since I built my desktop computer (and since before then), I have been extremely interested in setting up servers and doing network stuff.  I've been interested in running a web server off of my desktop machine.  As with all projects, before you begin, you need to plan it.  So, I have written a program in Python to automatically scan all the addresses ranging from http://aaa.com to http://999.com.  The URL generator's character set only uses the lower-case letters and the numbers 0-9, and the URL generator itself has an algorithm much like a brute-force password cracker.  But, anyhow, the scanner asks for the name of the server running the page and then, if it is Apache, it logs it to one file, if it is Microsoft Internet Information Services, it logs it to another, and if it is anything else, the scanner logs it to an "other" file.  Based on the 865 servers scanned (I only scanned the ones starting with 'a'), I found that:
  • 616 were Apache servers
  • 189 were Microsoft-IIS servers
  • 60 were other servers
and that:
  • Apache servers accounted for 71% of the total
  • Microsoft-IIS accounted for a paltry 22% of the total
  • All other servers combined amounted to 7% of the total
So, in other words, it is extremely safe to assume that one should go with Apache HTTPD Server unless they have a clear, non-excusable reason to go with something else.

In case the above statistics weren't enough, I scanned several popular and hi-tech websites to find out what they used.  My findings were:
  • apple.com: Apache
  • microsoft.com: Microsoft-IIS
  • cia.gov: wouldn't say!
  • fbi.gov: HTML
  • google.com: gws
  • mastercard.com: Apache
  • visa.com: Microsoft-IIS
  • usa.gov: Apache
  • facebook.com: HipHop
  • twitter.com: tfe
  • mit.edu: Apache
  • python.org: Apache
  • stratfor.com: Apache
  • apache.org: Apache
  • nbc.com: Apache
Now we have quite a different set of data on our hands.  Sure, my second experiment was very biased because I scanned websites that I knew of, but it seems that for more specialized sites like social networking and search, the web servers are custom built.  However, when scanning more "normal" sites, it seems that they use Apache.  So, in conclusion, I find that Apache is definitely the right choice unless a specific reason can be found to use something else (or unless you want to host the next hit social networking site!).  I have no reasons to use anything else, so Apache it is!