How To Choose Web Hosting: A technical Guide
Here is what I look for when choosing a host for a website, I’m not going to advise on specific hosting companies and if you follow this guide you should find a whole new set of questions to ask before signing up with a hosting provider.
How to choose a web hosting company
Back in the 2000’s shared web hosting was sharing a server with hundreds of sites and then competing for the same resources, no one knew how stacked the server was and shared hosting quite wasn’t dependable.
Roll on to the 2020’s and thanks to Cloud Linux every single account can now be isolated from the next and given dedicated resources, these are often technically shared but no one account can use more than their allotted resources.
What resources are required?
This would depend on the site, generally WordPress requires 1GB Ram, 1CPU and 1GB of storage space, this won’t have great performance but it’ll run a simple blog and use the following guide to work out how much more resources are likely to be required:
- 10+ Plugins = requires at least 1CPU + 2GB ram
- Woo-Commerce = requires around 2 CPU + 3GB Ram
These are rough estimates and yes Woocommerce will run on barely any resources, but wait until the site has two people adding products to their basket, they’ll both get 503 timeouts and go shop elsewhere.
Most reputable companies should be able to advise on the resources, there is one answer not covered by this and that is ‘scalability’, now in practice this is an excellent feature but in reality doesn’t come with budget hosting, so anything under the 30($/£/€) it’s probably not really scalable.
Other good questions about resources include:
Can I upgrade the package if I need more space or resources? Does this require extending the current renewal date?
Can I boost resources? As some companies offer to double resources for an additional fee.
Can I see resource usage in the hosting panel?
Are SSL's Included in the hosting cost?
So up until the mid 2010’s SSL’s were required and chargeable, they don’t make the site more secure but it does secure the connection between the visitor and the website, so are a good idea and web browsers today don’t like sites without them. There are chargeable SSL certificates and when a business is handling customer data having an SSL with a warranty from GlobalSign et al. can be re-assuring.
Since 2014 the EFF have provided certbot for Let’s Encrypt — This resulted in free and secure SSL’s. There is no technical reason a hosting company wouldn’t give you a free SSL, so checking an SSL is included for the life of the hosting and all sites in the hosting is advisable.
Companies have different ways of providing SSL’s, some don’t provide free ones at all, some provide an SSL for life only on the first domain, others provide a free one for the first year. There are reasons to pay for SSLs but when building a site having one included for free in the hosting makes life simple.
What web server does the hosting use?
The most common webserver is called Apache, this is fine, stable, reliable and powers the majority of the internet but when running WordPress there are a couple of options that offer noticeable speed improvements:
Both of these can offer something called server side caching, which means the server makes copies of regularly accessed files / images and when requested provides them faster as a result. It also helps reduce resource usage as there are less requests made to the database to get a page to load (specifically benefits WordPress sites).
Out of the two options the most straight forward is Litespeed, it has dedicated plugins, the one for WordPress is called Litespeed Cache. When running on a Litespeed webserver using the Litespeed cache plugin it can help improve a sites ‘server response time’ and page load times in general.
NGINX is great but requires technical knowledge so if you’re not familiar with it the Litespeed is a better option.
When setting up cache there should only be one plugin doing this, so before installing purge the cache on the previous plugin and remove it before installing another caching plugin. Also, cache can ‘break’ sites so after installing check the entire site is working as expected.
Does the hosting have FTP & PHPmyAdmin access?
FTP and PHPmyAdmin are standard features in webhosting for managing site files and databases. Having access to both of these features means that you can take a fully copy of your site and move it to another provider if you’re not happy with the current hosting provider. This helps prevent vendor locking.
Are regular backups taken and can they be downloaded
Having regular backups means that if something goes wrong it can easily be restored to a working version. The reason to check if they are downloadable is due to hosting providers retention policies, which is generally 30 days. So if a site gets malware and you don’t notice until all the backups have the malware it can come with a costly clean up bill.
If you download a backup of the site each month and store this on your local machine the chances of restoring a clean copy of the site are much greater.
This is the final question I would ask, web hosting is a long term purchase and if a site is running fine then having to move it because of cost isn’t ideal. The renewal cost is the actual cost of the hosting and the introductory offer is a sweetener and if it results in a huge increase at renewal then it comes with the hassle of moving the site or paying over the odds for hosting.
So these are the questions I would ask a hosting provider before using them, how they respond can give you an idea of the response times when asking for support or account queries:
Does the hosting account have dedicated resources? How much Ram and how many CPU’s does it have?
Does the hosting include an SSL certificate for the lifetime of the hosting package?
Does the server run on Litespeed?
Does the hosting panel have FTP and PHPmyAdmin access?
Do you take regular backups and can these be downloaded?
Does the cost of the hosting increase when renewing?