Understanding HTTP and HTTPS: The Language of the Web
Written on
Chapter 1: The Basics of Web Communication
To interact with others, we utilize a specific language. In the digital realm, HTTP serves as the common language that facilitates communication between websites on the Internet. HTTP stands for Hypertext Transfer Protocol, and it establishes the guidelines for how requests and responses should be formatted. Essentially, it dictates how information is shared across the World Wide Web.
You might be curious why a URL remains functional even when the HTTP prefix is omitted. This is due to the browser's capability to automatically append the HTTP protocol to the URL.
Requests and responses on the Internet go beyond mere questions and answers; they encompass technical elements that include data, metadata (information about the data), and the specific manner in which a request should be processed. The same holds true for responses, which may either direct you to a website, such as www.fam-front.com, or deliver specific data—or none at all.
To visualize what a request looks like, we can refer to a screenshot from Chrome's developer tools. If you're unfamiliar with these tools, don't worry; there's a dedicated chapter that will equip you with the skills to master them!
In this instance, I made a request to my web application at www.fam-front.com. A typical HTTP request includes the following elements:
- The URL: www.fam-front.com
- The method: GET
- The status code
It's essential to indicate the method (like GET) along with the server hosting the website. Here's a conceptual illustration to aid your understanding:
Chapter 2: Introducing HTTPS
Now, let's discuss HTTPS. The Internet is accessible to everyone, which means if I can reach a website, so can you. As previously mentioned, requests sent over the web are visible in plain text, making them susceptible to interception by hackers. For this reason, websites must implement secure measures to safeguard against cyber threats. This is where HTTPS (HTTP Secure) comes into play.
To ensure secure communication, we rely on SSL (Secure Socket Layer) and its successor, TLS (Transport Layer Security). You can think of SSL and TLS as protective layers that shield your communications from eavesdropping and tampering by malicious actors.
When a website is secure, you will see a small padlock icon next to the HTTPS in the URL:
Thus, the HTTPS protocol guarantees that your online requests are both safe and encrypted:
The browser communicates with the Google server to establish a secure connection by presenting a digital certificate, akin to an identification card for people. This certificate verifies that the entity requesting Google's page source code is indeed Google. If the certificate is invalid, the browser will alert you with a warning page that you may recognize:
Key Takeaways
- HTTP serves as the protocol and communication language for data exchange between web applications.
- HTTP functions like a messenger for the web, delivering various types of content such as images, files, and videos.
- Browsers utilize the HTTP protocol to communicate and present web applications to users.
- HTTP is connectionless, meaning the client (browser) disconnects from the server after a request is made. The server reconnects to deliver the response when it's ready.
- For secure communication, HTTPS should be used.
- Digital certificates are issued by certificate authorities, similar to how governments provide IDs and passports.
Next, we'll delve into the URL structure, request headers, and methods.
The first video titled "What is the world wide web? - Twila Camp - YouTube" explains the foundational concepts of the web and its significance.
The second video, "Why the World Wide Web is NOT the Internet - Learn to Code Series - Video #16 - YouTube," clarifies the distinctions between the web and the internet, helping you understand their separate roles.
In conclusion, understanding HTTP and HTTPS is crucial for navigating the web safely and efficiently. If you found this content helpful, consider supporting my work as a paid member. Your contributions will allow me to dedicate more time to crafting informative articles.
For updates on my writings, please feel free to connect with me on Medium, LinkedIn, Facebook, Instagram, YouTube, or Twitter.
Explore more content at plainenglish.io and subscribe to our free weekly newsletter for exclusive insights and opportunities within our community Discord.