WHAT IS HTTP?:HTTP means Hyper Text Transfer Protocol. It is the primary technology protocol on the web, which makes linking and browsing possible.
It is a technology used to communicate between web servers and web users.This protocol is the basis of large, multi-functioning, multi-input systems – such as the World Wide Web. The web as we know it will not function without a communication process, because links rely on HTTP to function properly.
When you open a web page, enter http: // next to its URL address, which tells the browser to communicate over HTTP.
For example, the URL of tricktotest is https://tricktotest.com
Today’s browsers no longer require HTTP against URLs, as this is the default method of communication.
Since most web browsers take default HTTP, all you have to do is type the domain name and browsers can auto-fill the “http: //” part.
However, it is kept in the browser due to the need to separate protocols like FTP.
This protocol is similar to others such as FTP, which is used by client programs to request files from a remote server.
In the case of HTTP, it is usually a web browser that requests HTML files from the web server, and then displays in the browser with text, images, hyperlinks, etc.
WHAT IS HTTP Definition
HTTP (Hypertext Transfer Protocol) is a set of rules for transferring files (text, graphic, image, sound, video, and other multimedia files) to the WWW-World Wide Web.
How HTTP Works
HTTP uses a client-server communication model that is an application layer protocol built on top of TCP.
HTTP clients and servers communicate through HTTP requests and response messages. The three main HTTP message types are GET, POST, and HEAD.
HTTP GET messages sent to a server have only one URL. Zero or more optional data parameters can be added to the end of the URL. The server processes the optional data representation of the URL, if present, and returns the result (element of the web page or web page) to the browser.
HTTP POST places an optional data parameter in the body of the request message instead of adding the message to the end of the URL.
The HTTP HEAD request performs the same function as the GET request. Instead of replicating the URL with the entire content, the server only sends back the header information (within the HTML section).
The browser initiates communication with an HTTP server by initiating a TCP connection to the server. Web browsing sessions use server port 80 by default, although other ports such as 8080 are also sometimes used instead.
After an session is established, the user visits the web page and triggers to send and receive HTTP messages.
Problems with HTTP
Issues with HTTP – Messages that are transmitted over HTTP can fail to deliver successfully for several reasons:
- User error.
- Web browser or web server malfunction.
- Error in creation of web pages.
- Temporary Network Delay.
Components of HTTP
HTTP is a client-server protocol: requests are sent by an entity, the user-agent (or a proxy on its behalf). Most of the time the user-agent is a web browser, but it can be anything, for example a robot that crawls the web and maintains the search engine index.
Each individual request is sent to a server, which handles it and provides a response, called a response. There are many entities between clients and servers, collectively called proxies, that perform various operations and for example act as gateways or caches.
In fact, there are more computers between a browser and a server handling the request: routers, modems, and more. Thanks to the layered design of the web, these are hidden in network and transport layers. HTTP is at the top of the application layer. Although important for diagnosing network problems, the underlying layers are mostly irrelevant to the description of HTTP.
Client: the user-agent
A user-agent is any tool that works on behalf of the user. This role is primarily performed by web browsers; Other possibilities are programs that are used by engineers and web developers to debug their applications.
The browser is always a request-starting entity. It is never a server (although some mechanisms have been added over the years to simulate server-initiated messages).
To render a web page, the browser sends an original request to fetch the HTML document that represents the page. It then analyzes this file, making additional requests to display execution scripts, layout information (CSS), and the sub-resources contained within the page (typically images and videos). The web browser then combines these resources to present the user to an entire document, the web page. Scripts executed by the browser may receive more resources at later stages and the browser updates the web page accordingly.
A web page is a hypertext document. This means that some parts of the displayed text are links, which can be activated to fetch a new web page (usually with a click of the mouse), allowing users to direct their user-agent and the web Can navigate through. The browser translates these instructions into HTTP requests, and further interprets HTTP responses to present the user with a clear response.
The Web server
On the opposite side of the communication channel, is the server, which provides the document as requested by the client. A server literally appears as just one machine: the reason is that it can actually be a collection of servers, sharing the load (load balancing) or other computer (eg cache, a DB server, or e -Commerce server) is a complex piece of software to interrogate, generating a complete or partial document on demand.
A server is not necessarily a single machine, but multiple server software instances can be hosted on the same machine. With HTTP / 1.1 and host headers, they can also share the same IP address.
Between web browsers and servers, many computers and machines relay HTTP messages. Due to the layered structure of the web stack, most of these operate on the transport, network, or physical layer, are transparent on the HTTP layer and possibly have a significant impact on performance. Those working on the application layer are usually called proxies. These can be transparent, forwarding to requests that they receive without altering them in any way, or non-transparent, in which case they will alter the request in some way before passing it along to the server. Proxies can perform several tasks:
Caching – (cache can be public or private, such as browser cache)
Filtering – (like an antivirus scan or parental control)
Load Balancing – (to allow multiple servers to fulfill various requests)
Authentication – (to control access to various resources)
Logging – (Historical information storage allowed)
Secure HTTP (HTTPS)
A more secure version of HTTP is known as HTTPS. This typically involves the use of an SSL certificate that creates a secure, encrypted connection between the browser and the web server.
It is commonly used for secure areas of websites where sensitive data is transferred such as payments details or login credentials.
Although HTTPS has been listed as a Google ranking factor in recent years, more and more websites are moving to HTTPS for that reason.
HTTP uses 80 ports for communication, while HTTPS uses 443 ports.
History of HTTP
Tim Berners-Lee created early HTTP in the early 1990s as part of his work in defining the original World Wide Web.
Three primary versions were widely broadcast during the 1990s:
HTTP 0.9 (to support basic hypertext documents)
HTTP 1.0 (extension to support rich websites and scalability)
HTTP 1.1 (developed to address the performance limitation of HTTP 1.0, which is specified in Internet RFC 2068)
The latest version, HTTP 2.0, became an approved standard in 2015. It maintains backward compatibility with HTTP 1.1, but offers additional performance.
While Standard HTTP does not encrypt traffic on a network, HTTPS Standard was developed to add encryption through the use of (native) Secure Sockets Layer (SSL) or (later) Transport Layer Security (TLS) Was.