Overview:
A web server can mean both a machine and a software application. For the purposes of this page we are talking about the application that serves content to individuals within or outside of an organization. This spans from the smallest intranet site to gigantic internet behemoths like Google. On this page we’ll talk about the two most popular software applications for serving websites and then discuss the alternatives available to those who don’t want or need to run a web server in-house.
The Web Servers:
The two main web servers[1] are:
- Microsoft’s Internet Information Server (IIS) – IIS is currently at version 7. IIS is a full-fledged web server that can handle HTML, ASP, ASP.NET, PHP, POP, SMTP, NNTP and FTP amongst other protocols. It runs on top of the Windows Operating System and has a significant amount of expense associated with it (though not out of the reach of small businesses or the dedicated hobbyist). It is my preferred platform for development, mainly because I find the .NET Framework to be excellent.
- Apache Web Server – A free, open source web server that is extremely popular. It is oftentimes used as part of a complete solution known as LAMP. L stands for Linux (the basic operating system), A is for Apache (the web server), M is for MySQL (the database), and P is for PHP (the web language). For those looking to start on a shoestring, LAMP is the cheapest option. It is possible to run Apache on Windows, but I don’t recommend it.
The Costs:
Most companies don’t need to run a web server in-house. Running web servers in-house correctly requires a significant expenditure of money and manpower that in most cases can be better expended elsewhere. Here is a quick rundown of some of the costs you will incur when running a server in-house:
- The cost of a dedicated server for web serving. In general, one should not have other roles on a web server (not even the database).
- The cost of bandwidth for web serving. You’ll need either a T-1 (1.5 Mbps) or a fiber optic connection (e.g. Verizon FiOS) to host a site on. Depending on the amount of traffic you get you may need a lot more than this.
- The cost in manpower to setup, maintain, and secure a web server.
Outsourcing:
There are a number of options for the company that needs to have a web presence but doesn’t want to expend the resources to have a server in-house. Lets take a look at a few of these options:
- Shared Web Host: These providers are the logical place to start for most businesses. The prices are really low. You can get a Bluehost account (LAMP) for around $7/mo! On the Windows side my preferred host is WebWizHost. WebWizHost is a little more expensive but offers some really great features bundled in (e.g. MSSQL storage) and excellent support.
- Virtual Private Server: A VPS is the next step up from a shared web host. You still are sharing the physical server with other websites, but they are strictly isolated from one another. This helps ensure that what one website does or doesn’t do doesn’t affect how your site performs. Additionally, this provides you with root access to your virtual server – that is, you can install and remove programs, adjust system settings, etc. as if it was a real physical server. Finally, VPS’es usually include some definite specs – e.g. there is a dedicated amount of RAM, hard drive space, and CPU processing power that is specifically dedicated to your virtual server.
- Dedicated Server: Another option is to get a dedicated server. This means no virtualization, the entire physical server is yours to do as you please. This option was traditionally considered the step up from a VPS, but usually carries a price tag of $50-$100 minimum in monthly fees.
- Cloud Computing: This form of hosting utilized multiple machines pooled together to provide a fully redundant and scalable hosting solution. It is likely that this form of solution will become the common solution in the near future. Because it can offer small processing power with great scalability it is usable both by the smallest of companies and the largest.
- [1]Though there are numerous smaller and excellent servers out there as well.↩