How to Host A Website
How to Host A Website: Complete Guide
Hosting a website simply means making sure that your website can be accessible on the World Wide Web (WWW). This is usually done in one of two ways. You can pay for hosting with a service provider or you can host it yourself at your own server – we will look into both methods in this article.
Using a service provider is the simplest way of hosting a website. You can pay a small monthly fee and rely on the service provider to take care of all your equipment, infrastructure, and other associated needs.
Pros of hosting with a service provider
- Usually cheaper
- Support is often readily available
- No need for hardware maintenance
- Higher reliability
Cons of hosting with a service provider
- May be some service restrictions
- Fewer choices in hosting locations
Here are the steps to host a website with a hosting service provider.
There are two main types of websites; static and dynamic.
Simple static websites can be built using a What You See Is What You Get (WYSIWYG) application and then transferred over to the hosting account.
Dynamic sites are mainly application-driven and make use of scripts, databases, and other tools to generate some portions of the site on the fly. WordPress and Joomla are examples of common Content Management System (CMS) apps that are popular today. Others such as Magento and Shopify are used for eCommerce websites.
Much like there are many different categories of cars, website hosting also comes in various flavors. For example, shared hosting is the cheapest and easiest to manage – like compact cars in the world.
As the type of web hosting scales up, so too does the cost involved and often the complexity of managing the hosting account. For example, in VPS hosting you would need to manage not just the hosting details but also the environment that it is being hosted in.
Three types of web host
In a nutshell, the most common types of hosting are
WordPress? Magento? WooCommerce Hosting?
It’s important to know that web applications and web hosting are not the same things. Some web hosts offer plans such as WordPress Hosting, WooCommerce Hosting, and so on. These are not really hosting types, but intended to attract laymen who may not be familiar with real web hosting terms. These hosting offers merely entice users with the names of popular web applications.
For example, not many people might know the difference in hosting types, but many will recognize the term ‘WordPress’.
The type of web hosting you will need is typically defined by:
- The volume of traffic you expect on your website, or
- Any specific needs your website might have.
Most websites that are just starting out will typically have low traffic volume (i.e. few visitors) and shared hosting accounts will be fine for those. Most shared accounts will also come with application installers (such as Installatron), but to ensure that your needs are met, ask the host if the application you want can be installed on the account you’re looking at.
Shared vs VPS/Cloud vs Dedicated Hosting
In terms of performance and management, each web hosting type also has its own pros and cons so choose yours accordingly.
Even within hosting types, service providers often have a variety of plans available. The key difference in these plans often lies in the number of resources that each gets. The more resources your site has, the more visitors it can handle.
When it comes to resources on web hosting, we are typically referring to three core items – processor (CPU), memory (RAM), and storage (HDD or SSD). These however do not always translate to good performance of a web host.
In the past, there hasn’t been an easy way to gauge the performance of a web host. Most users had to rely on reviews which, unfortunately, normally only take snapshots of a host’s performance and seldom update that. To get past this, try using HostScore, a site that constantly rates the performance of web hosts based on ongoing data collection. This means that their web host performance assessments are much more accurate.
Also keep a lookout for value-added features such as free SSL, domain name, advertising credits, and included website builder, or other items that can help you build or market your site.
After testing and reviewing more than 60 hosting services in the past, I was able to narrow down some best hosting options for different use-cases.
Web Host for Newbies / Simple Websites
- A2 Hosting (signup at $3.92/mo)
- GoDaddy (signup at $5.99/mo)
- Priority Web Services (signup at $2.49/mo)
Web Host for Businesses / Growing Websites
Web Host for Developers / Advanced Users
Where your web hosting is the actual space your website files sit on, you need a domain name so that users can access your site. The domain name acts like your address on the WWW. Like real addresses, each is unique.
Many web hosting plans today will come with a free domain name, so make sure to check if that is applicable to the web hosting you intend to buy. If so, you can take care of the domain name at the same time as when you pay for your web hosting plan.
If not, you’ll need to buy a domain name separately. This can be done either from the same place that you bought the hosting plan or other service providers. If you need to buy the domain name separately, I highly recommend you look elsewhere.
Domain names are not fixed price items and often go on sale. Some providers often have cheap sales on domain names and if you’re lucky you can pick one up for a steal. Namecheap for example often had domain names on offer at up to 98% off.
The exception to this is if you are a first time site owner. In that case, buying a domain name and hosting from the same service provider might make things easier for you to work with as a beginner.
Once your domain name and web hosting plan is ready it’s time for migration. Site migration can be complex, so if you’re doing this for the first time, ask for help from your new host. Some hosting service providers offer free site migrations.
If you have built your website locally (on your own computer) then simply transfer our files onto your web server. To do this you can either make use of the File Manager in your web hosting control panel or make the transfer using an FTP client.
The process is similar to copying files from one place to another on your own computer.
Hosting a website locally means that you’re in essence using your own location to set up a web server from scratch. This means that you are responsible for everything from the hardware and software all the way to bandwidth provision and other infrastructure needs.
Pros of self hosting
- Extreme control over your hosting environment
- Potential for faster service turnaround times
- Your choice of equipment and service providers
Cons of self hosting
- Can be very expensive
- Not always possible in residential environments
Caution: Hosting web servers locally is complex and can be very expensive. It is also often less reliable than hosting with a service provider.
Basic server hardware can be very similar to the hardware on your own PC with some slight differences. In fact, technically, you could take your own PC (or even laptop) and turn it into a home web server if you really wanted to.
The key difference is in how reliable you want your web server to be and the visitor volume it can handle. As with service providers, you will need to keep an eye on processor, memory, and storage space.
If you opt for high-end server equipment such as rack server, you will also need to ensure that the specialized needs of this equipment is met. This includes in space, cooling, and power.
If you need the service to be more reliable you will also need to consider redundancy in hardware. For example, running your storage drives in RAID, plus active mirroring of backups onto additional drives.
Your other infrastructure equipment such as routers and modems will also need to be able to handle high loads of traffic.
For software, aside from your operating system you will need to also focus on your web server platform (at the moment, Apache and Nginx are the most popular on the market). This also means that you need to be responsible for not just configuring the software, but also for licensing.
Internet bandwidth is also vital to running your own server. In many cases, most of us are fine with standard Internet bandwidth since we’re using limited connections to the Internet. Imagine if 30 people were trying to use your home Internet at the same time – that, and perhaps more, is what you might be looking to support.
What also needs to be taken into consideration is your IP address. Most home Internet plans come with dynamic IPs assigned. In order to run a web server, you need a static IP. This can either be handled by a service provider such as DynDNS or by buying the service from your Internet Service Provider (ISP).
The next part is similar to the experience of using a web hosting provider, except that you don’t get any support. Your web files need to be moved onto your web host in order for your site to start functioning.
Which Option is Best to Host Your Own Website?
As you can probably tell from the two examples here of using a hosting provider or self-hosting a website, the latter can quickly become incredibly expensive and complex. In reality, it is (believe me, I have done it before).
Aside from the satisfaction of having done it, there are few real benefits of doing so unless you are a business that has very specific needs for your site. Some of these might be legal or corporate requirements, for example.
However, web hosting service providers today have become very versatile and in many cases are open to discussing special needs with customers. In the majority of cases though, using a standard hosting plan is usually more than enough.
Hosting a website – especially if you opt for hosting locally, is never a setup-and-forget task. Server resources management will become more and more important as the popularity of your website grows. This is especially true when you have multiple websites hosted under the same server.
1. Choose a lightweight CMS
WordPress or Drupal, for example, would make a lightweight, flexible alternative that will save you MBs of web disk and bandwidth. Often less is more and lightweight doesn’t equal less functional. Make a chart of your alternatives and choose the CMS that most suits your needs and your hosting package.
2. For forum – Use miniBB instead of SMF
MiniBB only takes less than 2 MB against the 10+ MB of SMF, yet it’s a complete forum solution with a meaty repository of add-ons, extensions, and plugins.
Not fond of miniBB?
There are several lightweight alternatives against bigger forum scripts. PunBB, FluxBB and AEF to cite a few. Also, plan the scope of your forum before installing any solution: if your goal is to reach thousands to millions of users, an upgrade of your hosting package may be required. If you want to keep the forum staff-only or aimed at a small number of users, by all means use the resources you have available at your advantage.
3. Use a third-party newsletter provider
Install a newsletter software on your limited web hosting account and it will start eating up your disk and bandwidth. Unfortunately there is not much to do about it, and the smallest available newsletter script — OpenNewsletter — is still 640Kb and you’ll have to count in all the storage issues, too.
In comparison – MailChimp, a complete newsletter solution starting at zero cost if your target audience is less than 2,000 subscribers and you aim at sending not more than 12,000 emails per month.
All templates can be customized so you don’t need to host your own, and you can integrate the newsletter with Facebook.
4. Employ a caching system
The majority of small business and personal website owners on a low budget opt for shared hosting packages in order to save on investment. Sometimes an upgrade is by all means necessary to increase performance and welcome a wider audience and the traffic it generates, but if you can’t, you can save server resources by employing a caching system that doesn’t overload your CPU.
WordPress users can install W3 Total Cache but if you don’t use WordPress you should try to optimize your website cache with the tools made available by your CMS vendor. For instance, Joomla can count on Cache Cleaner or Jot Cache; while Drupal has several cache performance tools as well.
5. Regularly empty spam content
Get rid of spam in the form of emails, blog comments, pingback URLs and files that overload your servers and database quota.
Do it at least once a week to avoid memory issues (e.g. WordPress comment deletion only works up to a memory of 64MB, after which you’ll get a fatal error and you will have to either increase the allowed memory size in your PHP.INI file or in wp-config.php within your WordPress root).
6. If possible, use external databases
If your host allows remote database linking, by all means use it. External databases help lighten usage of your web disk quota because they store your content outside of your hosting account. However, keep in mind that remote databases can be quite expensive and a hassle to the end users.
7. Use third-party file hosting services
Host all things downloadable on an external file hosting service, such as Photobucket, Vimeo, YouTube, 4Shared, Giphy, and so on.
You should not allow your visitors, clients or readers to upload content on your servers if your resources are limited.
8. Regularly download and delete log files
Log files were created to keep you informed of your website health, but there’s no use of them on the server: if you don’t download and remove them at least once a week, their size will grow to occupy several megabytes to a GB. This is especially true of two cPanel logs:
The error_log file usually includes dynamic errors such like PHP warnings, database errors (illegal collations, etc.) and spam comments that didn’t go through. Check this file weekly for errors and warnings, then remove it.
The /awstats/ folder, on the contrary, contains all access logs and statistics logs for your website. You should disable the AwStats software in your account to avoid webspace usage increase as the program automatically stores its stat files, or if you can’t because of restricted privileges, you should contact your host and ask to disable all analytics software.