If there’s one thing there’s no shortage of on the Internet, it’s Web hosting companies. There are thousands of them. Naturally, this makes your choice somewhat bewildering when it comes to getting your site online. Which one do you pick? What if they turn out to be unreliable? What sort of service do you need? Who can you turn to for help or recommendations?
In this article we’ll address all these questions, and more. By the end of it, you’ll be able to make an informed decision about which service to go with.
What do you need the hosting for?
As always, it’s good to work out your requirements before jumping in and looking at hosting companies and features. If you’re planning to publish a five-page website about your family then your requirements are going to be pretty simple. On the other hand, a full e-commerce website with shopping cart and secure payment facilities are going to require something a little more substantial.
What’s your budget?
Obviously, your budget is going to influence the type of hosting service you choose, as well as the features you end up with. You can spend as little as $5 per month on shared hosting (or even nothing per month, if you go with free, ad-supported hosting) all the way up to hundreds of dollars per month for a managed dedicated server.
When working out your budget, it’s worth taking into account the following factors:
- Are you planning to make a profit from the site? If it’s just a website for friends and family to look at, then the answer is obviously no. In this case you’ll be wanting to keep the hosting costs to a minimum, so you’ll probably be looking at free or shared hosting. However, if you are planning to make a profit…
- How will you make money from the site? If you’re building an online store then the answer is pretty obvious. However, there are many other revenue streams for websites, including subscription services, advertising, and affiliate programs. It’s often worth using a combination of these to help bring in a steady income.
- Reselling Web hosting. If you’re looking at the pricier hosting options, such as dedicated servers or colocation, you might want to think about selling Web hosting services to other customers, and hosting their sites on your server. This is a great way to make use of any surplus server power, and can help to offset the high cost of running such a server. However, it does mean that you need to be available to support your customers and fix issues.
What type of Web space do you need?
When it comes to choosing the type of Web hosting service for your website or sites, you have a number of options to pick from. Here we’ve listed them in rough order of price, cheapest first.
Free Web space
There are many free Web hosting providers out there, but as with most things in life, you get what you pay for! Most free hosting services are pretty restricted – for example, a small amount of disk space, no server-side scripting, tiny transfer allowance, and no guaranteed uptime. You also have to put up with ad banners on your site a lot of the time. In addition, if you publish your site under their domain, you’ll find it hard to move your site elsewhere in the future.
However, free Web space is a great way to host a simple personal site, and such services usually come with some handy browser-based tools to help you create and upload your site.
Shared hosting – sometimes called virtual hosting – is usually the cheapest form of paid hosting available. Your site sits on a single Web server with sometimes hundreds of other sites.
The service is usually pretty reliable and you don’t have to worry about tinkering with the server. However those hundreds of sites can put quite a load on the server, resulting in a slow site at peak times, and you don’t have much control over the server should you need to install and customize complex Web applications. Many shared hosting plans also limit the usage of resource-heavy Web software such as forum scripts. There are also security issues to think about – if the Web server is compromised, all the sites on that server may be affected.
Virtual private server
A virtual private server – also known as a virtual dedicated server or, simply, a virtual server – sits between shared hosting and dedicated servers in terms of power and price. The hosting company “splits” each physical server, using special software, into a number of “virtual” servers, one per customer. Each virtual server behaves more or less like a full PC, and is completely isolated from the other virtual servers running on the same physical server. This makes virtual private servers more secure than regular shared hosting, but a lot cheaper than renting a standalone dedicated server box.
You usually have superuser (root) access to your virtual server, which means you can install any software you like on it and tinker with the server’s configuration to your heart’s content. However, this also means that you’re responsible for managing the server yourself – installing security updates, fixing problems, and so on – which requires some degree of server administration skills (or the willingness to learn them!).
Some hosting companies offer the best of both worlds, in the form of managed virtual servers. With this arrangement you have more or less full control, but the hosting company looks after system updates and fixes. Naturally, the managed option is generally more expensive than a plain vanilla virtual server.
A dedicated server is a whole, physical Web server machine that you rent from the hosting company. Generally speaking, you have full superuser access to the machine, and can do pretty much what you like with it. A dedicated server is a step up from a virtual private server, because you have access to the entire power of the physical machine, and you don’t have to worry about any possible security issues from other servers running on the same machine.
Dedicated servers are ideal if you’re running a high-traffic site (or group of sites), and you want full control over the exact configuration of your Web server and its installed applications.
As with virtual servers, you’re responsible for keeping the machine up to date with security patches, as well as installing software and troubleshooting problems with the server.
With a managed server – also called a managed dedicated server – you rent an entire server to yourself, but the hosting company looks after it. You don’t have to worry about stuff like installing upgrades and security patches, or troubleshooting and fixing problems with the server.
You’re often given superuser access as well, although many hosting companies like to see some evidence of your server admin credentials before they’ll grant you this access, and they may still lock down exactly what you can tinker with.
Managed servers are generally pricier than plain dedicated servers, because you’re paying for the support staff on top of the server costs. However, they’re a good choice if you’re running a mission-critical, high-traffic site and don’t want to be bothered with the hassles of system maintenance.
Colocation means putting your own Web server in the hosting company’s server room, connected to their network. In many ways it’s similar to having a dedicated server, but you get to choose the exact hardware and software for your server machine, and you can set up the server beforehand.
Colocating your own server is obviously cheaper than hiring a dedicated server as you’re not paying for the server itself, just the network usage and server room space. However, the hosting company usually won’t support the server at all – any upgrades or maintenance will have to be done yourself.
The colocation option is usually used for certain specialised situations, or by large businesses wanting to host their corporate extranet servers.
Does your site have its own domain name?
Do you already have a domain name registered for your website? If not — and you want a domain name — then you’ll need to find a registrar to register your domain name with. Some well-known registrars (at the time of writing) include GoDaddy.com, Register.com and Network Solutions. Generally speaking, you search for a domain name on sites such as these – don’t be surprised if the name’s already taken! – and, when you find an available name, you register it for a small yearly fee.
You can learn more about the process of finding and registering a domain name in How to set up your own domain name.
Once you’ve registered your domain, you need somewhere to host it. This isn’t the same as hosting your website, although most website hosting companies can also host your domain. (Some registrars, such as GoDaddy.com, can register your domain and host your domain and website, all in one go.) Hosting your domain simply means entering the domain name into a DNS (domain name system) server. This points your domain name to the Web server that will host your website, so that people can get to your site. Your hosting company will usually arrange your domain name hosting when setting up your Web hosting service.
What hosting features do you need?
Once you’ve decided on the type of hosting you need, and you’ve sorted out a domain name, it’s time to have a think about exactly what features you’ll need for your website. Let’s run through the common features available with most hosting plans.
How big is your website? Take a look at the total size (in bytes) of its folder in Windows Explorer or the Mac Finder. You’ll need Web space at least as big as that. It’s good to allow room for growth, so you should go for double the current size of your site as a minimum. Note that many Web hosts lump databases and mailboxes into your total usage quota, so if you’re planning on using databases or email then you should allow for these too.
Typically, shared hosting providers will give you anything from 10MB of disk space up to several hundred GB. With dedicated and colocated servers, you have access to the whole hard drive (minus applications and system files, of course).
Most hosting providers put a limit on how much data you can transfer in and out of your server in any monthly period. Obviously, the busier your site, the bigger the limit you’ll need. However, another factor comes into play: Does your site include a lot of bandwidth-heavy images or movie files? If so then you may need a bigger transfer limit than you think.
Typical transfer caps range wildly from 100MB per month – which is the equivalent of around 2,000 page views, assuming 50kB per page – up to around 5,000GB per month. Some plans even offer “unlimited” transfer, although you should be wary of service reliability in this case.
You can use FTP (File Transfer Protocol) to upload your Web pages and images to your website. Nearly all Web hosting services support FTP. If you’re new to FTP, take a look at our FTP articles to find out more information.
Many Web hosting services include one or more POP or IMAP mailboxes that you can use to send and receive email at your domain. You can then set up your own email addresses, such as “firstname.lastname@example.org”. The advantage of having your own email domain like this is that you can move hosting providers and still keep your email address, as you own the domain. (Compare this to using your ISP email address, which is at the ISP’s domain. If you move ISPs, you’ll have to get a new email address.)
A lot of Web hosting companies include spam and virus filtering of your incoming email as part of the service, and also provide a webmail interface to your mailboxes, allowing you to send and receive email from any computer connected to the Web.
These days, a lot of websites feature some kind of server-side scripting. Server-side scripts are programs that run on the Web server and add interactivity to your website. Common examples include contact forms, tell-a-friend scripts, discussion forums and blogging software. Web scripts can be written in a variety of languages; the most common ones are PHP, Perl and – on Windows servers – ASP and ASP.NET.
Many hosting providers let you install and run your own scripts. You can download thousands of free scripts from sites such as Hotscripts.com and The Resource Index, or you can, of course, write your own (or have someone write them for you). Some hosting services only let you use scripts that they have pre-installed; these commonly include contact forms, hit counters and the like.
If you’re planning a very simple website – for example, a few pages showing some photos of your dog – you probably don’t need to worry about scripting, or databases (see below), at this stage.
Many Web scripts, such as discussion forums and blogging scripts, need some sort of database to store their data in. Common database systems include the open-source MySQL and PostgreSQL and, if you’re using Windows hosting, Microsoft’s Access and SQL Server. If your hosting service supports scripting, it probably includes access to a database system as well.
Generally speaking, your Web host will create one or more databases that you can use for your Web scripts. Usually you administer your databases – which includes viewing and editing data, and occasionally creating and deleting databases – via some sort of Web-based control panel, such as the catchily-named phpMyAdmin.
If you already have a Web script that you want to use on your site – such as WordPress or phpBB – check that your prospective Web host includes support for the database system used by that script. MySQL is generally a safe bet, as nearly all PHP scripts that use a database will support MySQL.
Some hosting plans offer SSH (secure shell) access to your Web server. You can use SSH to issue commands directly to your server. SSH also gives you access to other useful tools, such as scp and rsync, for quickly and easily uploading files to the server.
If you’re running a virtual private server or dedicated server then SSH access will almost certainly be included. Shared plans sometimes offer SSH access – it’s somewhat more risky on a shared server – but it’s usually not enabled by default.
If you need help getting started with SSH, check out our SSH tutorial.
Website statistics give you a lot of useful feedback about the people visiting your site. You can find out how many people visit each day, how many pages they look at, how long they stay on your site, how they found out about your site, and all sorts of other handy info. Many Web hosting providers throw in free site statistics as part of their hosting packages, usually accessed via some sort of Web-based control panel. Common statistics packages include AWStats and The Webalizer.
Backups and monitoring
Any Web hosting provider worth its salt takes regular daily backups of their servers. If you’re looking at a shared hosting plan then this should include backups by default. With a dedicated server or virtual private server, you may have to arrange backups yourself. This may involve mirroring to a second hard drive, rotated tape backups, or over-the-net backups using, for example, rsync.
As well as making sure that your server is backed up regularly, it’s worth asking your prospective hosting company how they’d go about restoring data from their backups if you needed it in a hurry.
Another fairly critical service is server monitoring. This involves regularly and automatically checking various aspects of your server. Can the server still be reached on port 80 (in other words, is the Web server actually running)? Is the hard drive OK, or is it starting to show signs of failure? Are all the fans inside the machine working correctly? As soon as a warning sign is picked up, someone needs to step in and sort out the problem to avoid unnecessary downtime.
As with backups, a shared server should be monitored round the clock by the hosting company (check with them to make sure), while you’ll usually have to take care of monitoring a dedicated server by yourself, unless it’s a managed server.
How do you choose a good provider?
So you’ve worked out your requirements, you know which type of hosting you need, and you’ve made a list of the features you want. How do you go about picking a hosting company from the thousands out there?
Your first step will probably be to search for “web hosting” on Google or another search engine. This will, of course, give you a wealth of options to choose from. If you know you’re after a particular type of hosting, such as a dedicated server, then you can try searching for “dedicated server hosting” to narrow the search a bit. You could also try the Open Directory’s Web hosting category. Friends and colleagues are also a good source of information, advice and recommendations.
As you whittle down your list of hosting companies, evaluate each hosting option against your budget, feature list, and other criteria. This will help you narrow your choice further, but there’s still a big unanswered question: How do you know if the companies you’ve selected are reliable and trustworthy?
One good way to find out is to participate in relevant forums and newsgroups. Here you’ll find opinions on various hosting companies from past and present customers. Make sure the forums are independent – that is, not sponsored or run by any particular hosting company – so you know you’re receiving impartial advice. Search the Web for some hosting companies that fit your needs, then search for those company names in the forums or newsgroups. Do the companies you’ve chosen have good reputations?
Some good forums and newsgroups include:
- WebHostingTalk Forums. These forums have been around for years, and are a good source of impartial opinions and advice.
- Web Host Directory Forums. Here you’ll find forums discussing customer experiences of various Web hosts. The main site also features a directory of hundreds of Web hosting companies.
- alt.www.webmaster newsgroup. This is a lively group discussing everything to do with running a website. It’s a great place to ask for advice on Web hosting.
Another thing to think about is the physical location of the Web server. (This isn’t always the same as the country that the hosting company resides in!) Hosting in the US is often cheaper than hosting in other Western countries, and is great if most of your visitors are based in the US, but you might find that you have difficulties when it comes to technical support – expect to pay a lot of money in international phone calls! In addition, if you host your email on the Web server, or use SSH frequently, you’ll appreciate the faster round-trip (“ping”) times that you get by having a server located in your own country.
Once you’ve narrowed your list down to a handful of prospective hosts, it pays to get in touch with their sales and support teams with technical questions before you buy, and see how responsive and helpful they are. Do you get a good feeling from them? If not then they’re probably not the company for you.
Hopefully, by the time you’ve worked your way through the steps in this article, you’ve chosen your ideal hosting company. Once you’ve reached that point, sign up with them – ideally with a free trial period, if possible – and good luck!