Jump to content

Hypertext Transfer Protocol

From Simple English Wikipedia, the free encyclopedia
Revision as of 17:59, 5 May 2022 by Comp.arch (talk | changes) (a) HTTP/3 is much faster, in lay-men's terms, i.e. has lower latency practically speaking. b) mention HTTPS.)


Hypertext Transfer Protocol (often abbreviated to HTTP) is a communications protocol. It is used to send and receive webpages and files on the internet. It was developed by Tim Berners-Lee and is now coordinated by the W3C. HTTP version 1.1 is the most common used version today. It is defined in RFC 2616.

About half of websites already use its successor HTTP/2 (which almost all web browsers support), and 25% of websites already support its much faster proposed successor HTTP/3, which is closed to being standardized.

HTTP works by using a user agent to connect to a server. The user agent could be a web browser or spider. The server must be located using a URL or URI. It normally connects to port 80 on a computer.

The secure variant of HTTP is called HTTPS (Hypertext Transfer Protocol Secure), and is used by more than 79% of websites,[1] which is what is used be default by most web browsers, assuming the web server supports it. If the website browsed to, is shown starting with http: without the s, then an insecure website is being used, and passwords or other data sent to them can be stolen. HTTPS encrypts all the information that is sent and received. This can stop malicious users such as hackers from stealing the information and is most often used on payment websites. HTTPS uses port 443 for communication instead of port 80.

Request Message

Tim Berners-Lee who developed http in 1995

The request message contains the following:

  • Request line, such as GET /images/logo.gif HTTP/1.1, which requests the file logo.gif from the /images directory
  • Headers, such as Accept-Language: en
  • An empty line
  • An optional message body

The request line and headers must all end with two characters: a carriage return followed by a line feed, often written <CR><LF>. The empty line must consist of only <CR><LF> and no other whitespace. In the HTTP/1.1 protocol, all headers except Host are optional.

A request line containing only the path name is accepted by servers to maintain compatibility with HTTP clients before the HTTP/1.0 standard.

  1. "Usage Statistics of Default protocol https for websites". w3techs.com. Retrieved 2022-05-05.