1.2.4.3 HTTP and (Hypertext Transfer Protocol)
1.2.4.3 HTTP and (Hypertext Transfer Protocol)
3 HTTP and
HTTPs HTTP
(Hypertext Transfer
Protocol):
HTTP is an client-server protocol that allows clients to request web pages from
web servers. It is an application level protocol widely used on the Internet. Clients
are usually web browsers. When a user wants to access a web page, a browser
sends an HTTP Request message to the web server. The server responds with the
requested web page. By default, web servers use the TCP port 80.
Clients and web servers use request-response method to communicate with each
other, with clients sending the HTTP Requests and servers responding with the
HTTP Responses. Clients usually send their requests using GET or POST
methods, for example GET /homepage.html. Web servers responds with a status
message (200 if the request was successful) and sends the requested resource. An
example will clarify this process:
The client wants to access http://Example.com and points his browser to the URL
http://example.com (this is an example of an HTTP Request message). The web server
hosting http://example.com receives the request and responds with the content of the
web page (the HTTP response message).
However, HTTP operates over an unencrypted channel, which means the data
exchanged between the user's browser and the server is susceptible to interception and
manipulation by malicious entities. This lack of encryption poses a security risk,
especially when transmitting sensitive informationsuch as login credentials orpersonal
details. While HTTP is suitable forstaticwebsites and information that doesn't involve
sensitive data, its vulnerability to interception makes it less ideal for secure transactions
or interactions that demand data integrity and confidentiality. To address these security
concerns, a more secure variant, HTTPS, was developed. In Browsers, you can
immediately recognize that a web site is using HTTP. it appears like the following
image.
HTTPS (Hypertext Transfer Protocol Secure):
HTTPS, or Hypertext Transfer Protocol Secure, is an extension of HTTP designed to
provide a secure and encrypted connection between the user's browser and the web
server. The security is implemented through the use of SSL (Secure Sockets Layer) or
its successor, TLS (Transport Layer Security), protocols. The encryption ensures that
the data exchanged between the user and the server remains confidential, preventing
eavesdropping and tampering.
One of the key features of HTTPS is the use of SSL/TLS certificates. Websites that
implement HTTPS have these certificates, which are verified by trusted third-party
entities called Certificate Authorities. When a user accesses an HTTPS-enabled
website, their browser checks the authenticity of the SSL/TLS certificate. If valid, the
browser establishes a secure connection, and the web address usually displays "https://"
along with a padlock icon, indicating a secure connection.
HTTPS is essential for any website that handles sensitive information, such as online
transactions, login credentials, or personal data. It provides users with confidence in the
security of their interactions with the website, fostering trust and protecting against various
cyber threats, including man-in-the-middle attacks.
In Internet Browsers, you can immediately recognize that a web site is using HTTPS
because a lock appears to the right of the address bar:
HTTP Vs HTTPS
In summary, while HTTP is suitable for basic web browsing and information retrieval,
HTTPS
adds a layer of security crucial for safeguarding sensitive data on the internet. The
adoption of HTTPS has become increasingly important, not only for e-commerce and
banking websites but also for any platform that values user privacy and data security.
As the internet evolves, HTTPS continues to be the recommended standard for secure
communication, ensuring the integrity and confidentiality of data exchanged between
users and websites.
Understanding the structure of the DNS is essential for web designers and developers.
The Domain Name System (DNS) is a hierarchical naming system that translates
domain names into IP addresses. The Domain Name System (DNS) operates in a
hierarchical structure, which plays a vital role in translating human-readable domain
names into IP addresses that computers can understand. This hierarchical nature allows
for efficient and decentralized management of domain names across the Internet.
The Domain Name System (DNS) can be thought of as the directory of the Internet. We
find an online page or website by typing in the URL – like ethioteleom.com or some-
site.com. Our web browsers, on the other hand, need to translate the URL to Internet
Protocol (IP) addresses to find the correct site. It is a DNS that translates domain names
to IP addresses so our browsers can resolve, or connect to, requested Internet resources.
Every single device on the Internet has a unique IP address by which it can be uniquely
identified
by the other online devices. A DNS server eliminates the need for us to memorize these
IP addresses every time we want to visit a site or connect to a device. It is much easier
for us to type in a URL than IPv4 IP addresses (E.g. 192.168.1.1) or, worse, the more
complex IPv6 addresses (E.g. 2400:cb00:2048:1::c629:d7a2).
1.2.4.4.1 If you type www.example.com into a web browser, the query is transmitted
over the Internet and received by a DNS resolver.
1.2.4.4.6 Finally, the DNS resolver sends a query to the domain's nameserver.
1.2.4.4.7 The nameserver returns the IP address, for example.com, to the resolver.
1.2.4.4.8 The DNS resolver then returns the IP address of the domain that was requested originally
to the web browser.
1.2.4.4.9 An HTTP request is sent to the IP address by the browse
1.2.4.4.10r.The server returns the webpage to be rendered in the browser at that IP.
1.2.4.4.11 Finally, after all the processes mentioned above, the user can now view the web page on
their machine.
A Uniform Resource Locator (URL) is a string of characters that provides the address of a
specific resource on the web. This section will introduce the concept of URLs, explaining
their structure and components. A URL (Uniform Resource Locator) is a string of characters
that provides the address of a resource on the internet. It serves as a unique identifier for
web pages, files, images, or any other resource accessible via the web.
URL Examples:
∙ HTTP: http://www.example.com/index.html
∙ HTTPS: https://www.example.com/login
∙ FTP: ftp://ftp.example.com/files/document.pdf
∙ File: file:///C:/Documents/report.docx
Let's explore the topic of URLs in detail and cover some related subtopics:
URL: The concept and definition of a URL as a standardized format for addressing resources on the
internet. A URL consists of several components:
The protocol tells your browser how to connect to a webpage. It could be HTTP (hypertext
transfer protocol) or HTTPS (HTTP secure).The main difference between the two is that
HTTPS encrypts and protects any data transmitted between the server and browser.
∙ HTTP: http://www.example.com/index.html
∙ HTTPS: https://www.example.com/login
∙ FTP: ftp://ftp.example.com/files/document.pdf
1. Subdomain
A subdomain is a string of letters or a complete word that appears before a URL’s first dot. The
most popular subdomain is www. It stands for World Wide Web, communicating that the URL is a
web address. In the past, it was common to use www. But nowadays you can omit it from your
URLs if you want. Then there are other subdomains—blog, store, support, news, careers, and so on
—that are used for managing and organizing sections of a website that serve a specific function.
2. Domain
A domain is the main part of the URL that identifies the website. Like MOE, Amazon,
Expedia, or Ethiotelecom.
∙ .org: Non-profit
organizations. ∙ .net:
Network-related entities. ∙
.edu: Educational
institutions.
∙ .et: Ethiopia
∙ .uk: United
Kingdom. ∙ .ca:
Canada.
∙ .jp: Japan.
∙ .au: Australia.
∙ .app: Application-related
websites.
TLDs serve to categorize websites based on their purpose, origin, or content. They provide users
with information about the nature of a website and help organize the vast expanse of the internet
into more manageable segments. Choosing an appropriate TLD is often influenced by the type
of content or organization associated with the domain. 100
Grade 11 Web Design and Development Student
Module
4. Subfolder
A subfolder is a folder or directory that is located within the top-most directory (or main directory)in
your site hierarchy. For example, consider the URL www.domain.com/shoes/ In this URL, the“shoes”
subfolder is located within the main directory of the website, which is www.domain.com
. Similar to subdomains, subfolders are used to separate website content into logical
sections.
5. Slug
A slug is the part of a URL that identifies a specific page or a post on a website. It
helps users understand the context and content of a page. Look at this URL slug,
for example: “/best-baby-shampoos/”. Reading this slug alone, users can get an
idea of what the page is about. But sometimes, you’ll also come across URL slugs
that read like this: “/785321/”. The primary goal of the URL slug is to describe
the content of a page. So when you create a slug, make sure it’s descriptive.
6. URL Parameters
URL parameters (or query strings) are part of a URL that comes after a question
mark (?). They’re composed of keys and values, separated by an equal sign (=).
The key tells you what kind of information is being passed. The value is the
actual information being passed.
In the URL below, “color” is the key and “blue” is the value. This parameter will
apply a filter to a webpage to display only blue products. You can add multiple
parameters to a URL by separating them with an ampersand (&).
Now, there are two parameters: “color” with the value “blue” & “sort” with the value
“newest” This applies a filter to a webpage to show blue products and sorts them by
the newest first. Parameters serve multiple use cases:
∙ Searching parameters allow you to search results from a website’s internal search
engine
∙ Filtering parameters let you sort and filter listings on category pages. Listings
will often b e products, jobs, hotels, flights, etc. And they can be filtered by
various attributes, like pri ce, availability, size, brand, salary, location, flight
time, delivery