Chapter 1: What Is Web Hosting?
Most people never really think about where a website is, or even what a website is. I turn on my computer, open a browser, and go to Google or Amazon or Yahoo.
But what am I doing when I “visit” a website? If I’m a visitor, where have I gone? And if it is a “site,” where is it located?
What will you learn in this chapter:
- What a website really is.
- Three different types of websites (and why they’re mostly the same).
- Where a website “lives.”
- What a hosting company is.
Skip this chapter if… You have used web hosting before and have a good understanding of what a website is and how they work.
What Is a Website?
To understand where a website is located, it’s helpful to understand what it is.
We can roughly divide websites into three types (there is some overlap here — these are not strict categories, but they are helpful for thinking about this):
- Collection of documents or pages: This is the original type of website. Every page is a file in a public-facing directory. When you look at a web page, your computer is literally downloading the file and showing it to you.
- Web applications: Google, your web-based email provider, Facebook, and any online games you might play are all examples of web applications. Much like apps you run on your phone, tablet, or desktop, the files for the app have to exist somewhere.With web apps, they sit on public-facing web server the same way documents and files do. Your browser downloads some of the files and runs them, and there is constant communication between your computer and the web server.
- Content management systems: This is sort of a hybrid, and accounts for the vast majority of websites that exist today. The technology of a web application is used to simulate a collection of documents.If you read a blog, each blog post is probably not an individual file. Rather, the application is pulling the content out of a database and sending it to your browser as if it were a document, and your browser shows it to you without knowing any different.
There’s some additional complications we don’t really need to get into here, but the important thing is that when you visit a website, a series of things are happening:
- Your computer’s browser sends a request to the website’s server for something — a page, a document, a file for running an application. The URL or address you put into the bar at the top of the browser window is the main portion of that request.
- The web server receives the request and pulls together whatever it needs to deliver back to you what you requested. This might just be an existing file, or it might be a piece of a web application, or it might be an assembled document from a content management system.
- The web server responds to the request with some kind of content.
- Your browser shows that content to you.
Running a Website
So, in order to run a website, you need a computer connected to the internet that is capable of receiving requests, taking appropriate action, and responding.
When people talk about servers for their website, this is all they are talking about: computers that store the files needed to run a website, along with the software to deliver those files to anyone who asks for them.
You could, in theory, run a website from your home desktop computer, but that would be a terrible idea. There are many reasons for this:
- You’d have to know how to set it up properly to run a website (which is not a trivial matter).
- You’d have to leave it on and connected to the internet all the time.
- Your computer at home is only designed to deal with one user at a time. If a lot of people started trying to look at your website, your computer and your internet connection would both reach their limits and your website would stop working.
Better than running a website on a personal desktop computer, you could buy a server. This is just a bigger, faster, better computer.
Assuming you could afford it (they’re expensive) and assuming you could set it all up properly (it’s not easy) and assuming you could get a fast enough internet connection with a lot of bandwidth (expensive and not always available), you could then run your website from that server.
Obviously, this is a terrible idea. Too expensive, too complicated, too difficult.
Web Hosting Companies
Web hosting companies have solved this problem for you. They have bought the big expensive computers, they have set them up to work for running a website, they have made sure they have a fast connection to the internet. They’ve done all the work.
When you get a web hosting plan, you are borrowing a bit of one of their computers (or a whole one, sometimes). This lets you put the files and software needed to run your website somewhere that it can easily be accessed by anyone who wants to view it.
To make this easier for you, they also provide tools for managing your piece of the computer and for building and running your website.
When you use a web hosting company for your website, your website isn’t in a cloud somewhere or floating in an alternate dimension. It is a collection of real, actual computer files sitting on a real actual computer somewhere, in a real building.
Where that building is, and what that computer looks like will depend on which hosting company you use. And you may never see the computer or even know where in the world it is.
But it’s not magic, and it’s not that much different than the computer you are using right now.
A website is a collection of files that sit on a computer. For a website to work well, a regular desktop computer isn’t a good choice.
Web hosting companies provide fast, powerful computers so that anyone can run a website without having any special knowledge or buying any special equipment.