I’m sometimes asked who I recommend buying web infrastructure from. Here’s my list based on my personal experience:
Almost all of my domains are hosted with Namecheap. They’re simple, have a super-fast web interface, a straightforward API, and have never messed me around. Most importantly, they’re cheap, so I never have to regret a purchase. I transferred my domains from GoDaddy by hooking them up to third-party nameservers (see below) before initiating the move. It took around 24 hours.
NB: I get a cut if you buy a domain from the link above. If you’d prefer to avoid this, here’s a clean link.
A lot of people use GoDaddy for this, but their certificate chains make server configuration annoying, and there are about a million and one reasons to avoid buying from them anyway. Meanwhile, CheapSSLs resell certificates from a bunch of providers, including RapidSSL, for significantly less. I tend to use wildcard certificates, which are expensive (although still half the price of anyone else), but a normal cert will set you back around $7.99.
No complaints: Route 53 just works, including wildcards and complex domain rules. And it costs 50 cents per month, plus 50 cents per million queries. That’s pennies, and you get the benefit of Amazon’s distributed infrastructure and redundant data centers. It’s a good idea to host your DNS with a different provider to your domain names, and I haven’t looked back since switching earlier this year. (I had been using Namecheap’s bundled DNS, which is also pretty good, but again: keep your domain names and nameservers apart.)
My first ever .com website used Pair Networks, over a decade ago, and I’ve been recommending them ever since. Their support is responsive, and they sell perfectly good shared plans that fit most budgets. It’s worth noting, however, that although I’ve heard great things from the people I’ve recommended them to, I haven’t used a shared hosting plan personally since at least 2002. It’s worth thinking about virtual servers, too.
This blog runs on a dedicated SoftLayer server. They’re prompt, the connectivity is great and the prices are excellent. An alternative is Rackspace, who are genuinely great, but also comparatively very expensive. I’ve also had pretty good experiences with ServerBeach, who hosted YouTube when they started. Finally, I’ve had poor experiences with Codero.
I’ve learned the hard way that using default out-of-the-box SMTP to send email on rented servers, particularly on shared hosting, often results in a very high level of spam-flagged messages. Postmark deals with all of the nuanced email configuration for you, and just works, although if you’re using it for a reasonably successful service you’ll need to find a cheaper solution. (I moved to Amazon SES, which is a little trickier to hook up, but does the job nicely, and at a very low cost.) Postmark’s other genius feature: an inbound email API, which pings you messages in a JSON string, with attachments broken out and properly encoded. Brilliant.
Virtual servers are very often not cheaper than dedicated ones if you leave them running all the time (unless you’re running a very, very small instance). Nonetheless, it’s handy to be able to spin up or clone a server near-instantaneously. The leader is Amazon EC2, which is the service I’ve mostly used, but a lot of the coders I know swear by Linode (which I need to spend more time with before I can recommend it). AppFog and Heroku are versions of the virtual server experience that extract away a lot of the configuration and administration, but, frankly, I don’t trust them. I like to be able to get down and dirty with a server if I need to.