How does the Web work - Behind the scenes (URL to Webpage)
Have you ever wondered what happens behind the scenes when you input a URL into your browser? and How the browser shows your requested website? Knowing what goes on behind the scenes is not required to develop websites, but if you are intrigued or want to dive deeper into theory, you should understand how the web works. In this article, I will provide a high-level overview of how the web works without delving too deeply into technical details.
Let's get started
Note: This article is not about how the internet works.
The Big Picture
Let's say you want to visit my portfolio website. Here's the overview of what happens behind the scenes.
You enter a URL in the browser -> Browser requests your server -> Gets a response back -> A website appears.
Now let's break down this big picture into different parts.
Converting the URL into an IP address
It all starts with typing a URL in the browser. Let's say you entered https://itsrakesh.co. After that, the browser will send a request to your server. But hold on! How does your browser know where to find your website? For example, if you want to visit your friends' house, what do you need? - An address, right? Similarly, a browser needs an IP address in order to make a request to your server. We provide a URL, but the machine cannot read it and we cannot recall the IP address. What is the solution to this problem? Here comes DNS to the rescue.
DNS stands for Domain Name System. In simple terms, it deals with domain names, IP addresses, and stuff. Each domain is assigned a unique IP address. Itsrakesh.co, for example, is mapped to 18.104.22.168. When you enter a URL, your browser will request DNS to return its IP address.
Client - Server
Browser got the IP address of your server. Now, using that IP, your browser (client) will submit a request to your server. The server sends a response back to the client. This request-response cycle follows a protocol called HTTP(HyperText Transfer Protocol). Each HTTP request consists of a request line and some headers.
Request line is simply a path to different HTML files along with the request method(We often call these routes) For example,
GET /somepath HTTP/1.1
Headers contain information about a request like content type, browser info, and so on.
Parsing and rendering the response
For this, the browser uses a rendering engine to convert HTML code into visual and interactive elements like text, images, videos, and audio.
That's it! But there's so much going on that I couldn't tell it all since it would confuse you. So, in subsequent articles, I'll explain how the internet works and the OSI model.
Feel free to ask your questions in the comments.
LEAVE A COMMENT OR START A DISCUSSION
8 min read
How Feature Flags Can Help You Ship Faster and Smarter?
Are you tired of long development cycles and hesitant to push new features to production? Feature flags may be the solution you're looking for. In this blog post, we'll explore how feature flags can streamline your development process, reduce the risk of errors, and give you more control over the features you release to your users. From testing new features to rolling out changes to a select group of users, feature flags can help you do it all. Keep reading to learn how you can start using feature flags in your development workflow today.
14 min read
Dockerizing Your MERN Stack App: A Step-by-Step Guide
Are you tired of spending hours messing with crontabs and installing packages in an attempt to run your app locally? Are you sick of always missing a dependency that doesn't allow you to run the app and therefore you have to debug it for hours trying to find what's wrong? Then you've come to the right place. In this article, you will learn how to make use of Docker to develop and ship your software faster and easier.