What is Web Hosting?
Web hosting is the service that allows people to publish their content as a site on the web.
Publishing a site to the web involves two things:
- A computer that provides or serves the web site files to requesting clients (browsers) and
- An address on the internet to find the computer that is serving the web files.
It is possible for anyone with a computer and internet access can serve web site files on the internet for anyone to view.
There are, however, some considerations:
Any computer running most modern operating systems (OS) can be set up to run a web site.
On top of the operating system, you need software to handle incoming requests and package outgoing responses. This software effectively turns your computer into a web server. Apache is a commonly used software package for running web servers.
Hardware and performance
Like any other software package, performance is based on the computer hardware available (CPU, RAM, drive space, etc.). Performance is also affected by other software running on the same computer and utilizing resources.
Internet speed and access
Internet connection speeds (how fast can the data travel between access points), bandwidth (how much data is passing through) and access (how many other users are also push/pulling data) can also affect performance.
Finally, there are the issues of security and maintenance. A web server open to the internet is vulnerable to attack and unauthorized access. Web servers need protection against hacking, malware, viruses, and similar ilk, the same as a personal computer. Connections to other computers on the same network as the web server also need protection so they aren't vulnerable to attack.
Part of keeping a web server secure and functioning properly means keeping software and hardware up to date and working. Once a server is set up, software will need testing and updating, hardware may need replacing, and general monitoring of the system must occur in order to keep the setup running well.
Internet protocol (IP)
The internet address is the IP (Internet Protocol) number assigned to an access point on the internet. A client can sent a request to an IP number and receive a response.
Internet service provider (ISP) and gateway
An internet service provider (ISP) provides a gateway access point for a computer to access the internet. The ISP provides an IP address to our access gateway (we'll call it the modem) so data can find its way back. This is similar to having a street address for receiving mail. Once data is received by the modem, it is sent through the local network to the computer looking for the data. The local network (LAN) also uses internal IP addresses to keep straight who's who on the network. This would be like to taking a piece of mail received at the street address to the addressee's room in the building.
Network access and security concerns
If a computer on a LAN wants to be accessed by computers outside that LAN, from the internet so it can be a web server, the modem/router must be set to leave 'doors' open so that internet traffic can find its way to that computer. This is would be like leaving doors and/or windows unlocked and wide open so anyone can come in to see what you have. Pretend you have a piece of artwork you want people to see any time. If you only wanted people to see just that artwork in your house, you would need to set security features around your house to limit access to that one thing. This is much harder once people are already inside mucking about. Security is much easier when you are stopping them at the door or the modem, but then they can't come in and see the artwork.
Address numbers and labels
On top of that, the address to your web server is a number. It is much easier to remember and relate a verbal address than a numerical one. Continuing the street address analogy, it is easier to say your address is 1600 Pennsylvania Ave NW than it is to say 38.9072° N, 77.0369° W. You need to set up your server with additional capabilities to broadcast the name address (the URL and domain name) and translate that name address to the IP address of the server.
Another issue is that ISPs will reassign IP addresses as needed to modems on their network. You would have to stay on top of a shifting IP address and re-map it to the named address (URL). Of course, you could have ISP lock down your IP address, but that tends to cost quite a bit more on top of the internet access fees.
What's a web designer to do?
This is where we start looking at getting a web host.
Domain names and URLs
A domain name is a name mapped to one or more IP addresses on the internet. Rules for domain names are laid out by the DNS or Domain Name System. The DNS also provides a directory service, repeated and distributed to servers around the world, that manages the translation of IP address to/from domain names.
Domain Name Registrars (DNRs) are companies that handle managing domain names and adding domain names to the registry.
Users can lease a domain name for a period of time (up to 10 years at a time). Cost of the domain name is typically determined by the desired top-level domain (.com tends to be more expensive because it has a higher demand) and by the length of time the name is leased.
A URL (Universal Resource Locator) is a string of characters that provide an address to a file on a server.
The domain name is part of that address. The rest of the address includes the protocol for accessing the file (HTTP or hypertext transfer protocol is the most common one used for web pages), the directory path to the file, and, usually, the filename itself.
For example, this post has the following URL: http://littleberrystudio.com/blog/the-basics-of-web-hosting.html
- 'littleberrystudio.com' is the domain name
- 'http://' is the protocol (specifically: 'hypertext transfer protocol'--it tells the server how to send the data and the browser/client how to receive it)
- '/blog/the-basics-of-web-hosting.html' is the directory path to this file
Early in the days of the web, when the technology started leaving the nest of universities and governments, some enterprising business folk figured out how to provide this sort of service to the masses.
There are many variations on the service, but the core remains the same.
A company will lease space on a computer connected to the internet. This computer runs the software that allows it to operate as a web server. The company also handles the logistics of maintenance and security of the web server. Some companies may also handle the broadcast and conversion of named addresses to/from IP addresses.
A user will purchase time and space on said web server. For the cost, the user gets access to their cubbyhole of space on the server to put their web site files on.
Web hosts and hosting
Once the user puts their web site files on the web server, the files become accessible from anywhere on the internet. The web server is said to be "hosting" the web site. The company providing the service is known as a "web host".
Let's say, rather than have that artwork you want people to see reside in your house, you rent space at a gallery to display your artwork. The gallery handles the logistics of maintaining the space, covering security, handling traffic through the space and so on. This is what a web host does for your web site.
Cost for web hosting is based on a couple of factors: how much storage space is available to the user (more space typically costs more), and how much traffic (bandwidth or how much data is push/pulled over a period of time) the server needs to handle.
Costs can be adjusted up or down based on extras available (or not) to the user. Extras might include number of databases available, server-side scripting languages, ability to process data posted to the server, ability to process payments, among others.
The vast majority of web hosting services are paid via a subscription service. Most of the time subscriptions are charged monthly or yearly.