Why Everyone Should Run Their Own web Server

I’ve been meaning to write this post for quite a while now but I haven’t really had the time between work and family life, and in all honesty when I did have the time I’ve just been way too lazy to site here and put my thoughts into words. I just so happens that I am sitting here in Terminal C at LGA waiting for my flight to Kansas City via Charlotte of all places ( Not really a big fan of the south).

I remember the days when the prospect of operating your own website was so out there that those of us that were using services like GeoCities we basically gods in the eyes of our peers. These days while only a select few individuals actually operate their own websites most of us still go after the GeoCites like services of today, i.e shared hosting services. Why? Well that’s simple, they are dirt cheap, often less than $10 a month, for example Bluehost where this site used to be hosted was costing me around $110 a year for all of my hosting needs and they even included such niceties as Ruby on Rails hosting. The downside to these services however is the real reason they are so cheap. The reason why you pay so little for a shared hosting account is also pretty simple, on a given physical web server that say Bluehost operates there are probably 400 other sites hosted there, and I should probably re-phrase this some what, When I say sit I’m referring to your main domain (kccsnyc.com) for example was my main domain, however I like many others i’m sure have/ had more than one website running on the my account, these sites are technically a sub- domain of the main site that are aliased to the sub-dmain, i.e. ryankdjones.com was aliased to ryankdjones.kccsnyc.com.

So by now you’re thinking that’s all great boring background information but “ what does that have to do with title of this entry?” Well I find that many topics come across better with a bit of back ground. With that out of the way let’s get to the topic at hand, Why should everyone operate their own web server? Well for one thing cost, the cost for virtual web server has plummeted over the pas few years. Service like Amazon’s AWS has been a driving force for cheaper server hosting services, while AWS was not really specifically designed for web hosting it is never the less a linux service instance that can have a web server installed on it and the pricing is ridiculously cheap something on the order of 2 cents per hour to operate one of their micro instances which is more than enough for a small personal website. not a fan of Amazon? Well don’t let that stop you, all the big boys have an equivalent, Google, Microsoft, RackSpace all have essentially the same service offering at virtually the same prices. There are also relatively new comers such as Linode and Digial Ocean that work on a similar principle in terms of pricing but of course offer a much more simplified approach to web hosting.

Where do I begin?

Well first things first you need a domain name that you register through a registrar, the most popular and largest being Godaddy, however I personally like to shy people away from go daddy for a couple of reasons 1) they constantly try to oversell their add on services an 2) While I know this was a very long time ago They also publicly supported SOPA which is enough of a reason for me to never want to do business with them ever again. I recommend Hover , and before you get all worked up I do not get a dime from them for my recommendation I’m just speaking as someone who deals with this stuff on a regular basis and has learned through trial and error.

Second thing you need to do is to choose a virtual server hosting provider, The list is longhand I don’t particularly have a recommendation here, I use Inter Server as my provider for this and the Fifth Down Podcast but I’ve also used Digital Ocean for other stuff and really like them, in fact if it weren’t for laziness I would probably go through the effort of migrating from my current provider to them, but since my last migration basically took me 3 plus weeks to complete, laziness will win here and I will leave things as they are at least for now.

Third you need a web server, this is the actually piece of software that listens for incoming connections and serves them to visitors, not a trivial task to set up but also not rocket science here is a great guide from Ars Technica, which takes you through all the steps from installing the Operating System to enabling things like SSL.

Anyway, as the 5 of you that actually read this blog know, I’m a Network Engineer at a controversial hot technology start up, an as such I spend a large portion of my time looking at things like server logs as well as logs for various network devices.