To understand how websites work, you’ll need a little understanding on the following terms:
2. Domain name
What is a website?
A website is essentially just a collection of files (HTML web pages, images, CSS files, etc.) stored on a web server. Web servers are usually owned by web hosting providers and have been optimized to host websites.
What is a domain name?
A domain name is a unique identifier assigned to a particular website. In simpler terms, a domain name is the address that people type to get to your website. For example, the domain for this website is make-a-website.com.
Keep in mind that technically, the browser accesses your website by looking up its IP address. If there weren’t domains names on the Internet, we would only access websites by typing something like this: http://18.104.22.168 in the browser. That’s hardly practical since we would again have to memorize the address of every website we needed to navigate to.
Another term closely associated with domain names is URL (Uniform Resource Locator). A URL is simply a web address that points to a resource on a website. For your website’s homepage, the URL is the same as your domain name e.g. how to make a website with www.make-a-web-site.com. The URL for the About page is http://www.make-a-website.com/about/.
What is DNS?
DNS means Domain Name System. A DNS server is used to associate a domain name to a website. In particular, a DNS server maps a domain name to the server that hosts the website. As we’ve discussed earlier, every website has an IP address – the address of the server that hosts the website, which the computer understands. We humans understand mostly the domain name part. For that reason, a DNS server is used to assign domain names to their IP addresses. When you type a certain domain name, the browser contacts the DNS server to resolve the IP address associated with that domain name.
There are thousands of DNS servers across the world, and all are in sync with each other in some way. That explains why you might register your domain name with one company (e.g. Godaddy) and host your website with a different one (e.g.) Web Hosting Hub. This is done by updating the DNS records of your domain name in the control panel of your registrar. If you host your website with the same company as your domain name registrar, you won’t need to update the DNS records.
What happens when I type or click on a link to a website/webpage?
When you follow a link to a web page (URL), you are asking the browser to serve up the HTML file for that page. The following process goes on behind the scenes before you are served up with the web page that you requested:
1. Web browser checks its cache storage to see if it can “remember” the IP address that the domain name should resolve to. If successful, the HTML page for the URL is displayed. If this information was not cached, the browser moves on to step 2.
2. The browser looks up for a DNS server that stores this domain name entry. The DNS server will direct the browser to exactly where the website for this domain name is hosted. If the DNS entry lookup is successful, it means the web page (or resource) can be found.
3. The browser then requests the webpage from the server that hosts your website files. Since most websites today are dynamic, some server-side scripting also happens behind the scenes to decide which files need to work together to generate the HTML code that will be delivered to your browser.
4. The browser “downloads” the various pieces, such as images and CSS files – as instructed by the server – and interprets the HTML code to display a single web page.
That sounds like a really long process, so why do web pages load a lot faster than it should be (in theory)? Well it all boils down to the speed factor. By speed, we are referring to:
1. The speed of your Internet connection – if you have a cable connection, the time your browser takes to resolve the IP address of a website is usually a matter of seconds. It’s even faster if you’ve visited the website before since that information is stored in the browser’s cache memory.
2. The speed of your hosting servers. Some websites load so much faster than others and this is mainly down to the web hosting service they use. Some hosting providers simply have severs that perform better, or better hosting plans optimized for top speeds for your website. You should, therefore, take your time to compare hosting providers and their plans to see which would offer the best performance at the most reasonable rates.
Wrapping it up
To make everything easier to understand, you should always think of a website as a collection of web pages and files stored on their own folder on a web server. We access a webpage by typing its URL, or clicking on a link that points to that web page. An alternative method to access the same website is by typing its IP address, if we know it, such as http://22.214.171.124 instead of http://forbes.com/.
All registered domains use a DNS management system to assign them server addresses. In other words, the DNS server says which domain is associated to which website, hosted on which server. When you visit a website, the browser first resolves the IP address of that website by looking up the DNS records for the domain/URL you’re visiting. Once the browser establishes contact with the server, it downloads the requested web page/resource as HTML code and interprets it to serve you with a complete webpage.