HTTP
The abbreviation HTTP stands for “Hypertext Transfer Protocol” and refers to an Internet protocol that, together with the technologies URL and HTML, made the Internet in its current form possible in the first place. The HTTP protocol was developed starting in 1989 by Roy Fielding, Tim Berners-Lee and some of their colleagues at CERN. The first version 0.9 was published as early as 1991. The protocol is primarily used to transfer data in a network and plays a major role in displaying websites on the World Wide Web.
How communication via HTTP works
Communication over HTTP is based on messages, more precisely on requests and responses. A request is made by a client to a server, for example when an Internet user calls up a URL. The server eventually responds either with the requested content, which is then displayed in the browser, or with an error message and a status code. Each message consists of a message header and a message body. In the case of the server-side response, the header contains the HTTP status code and the message body contains the payload, i.e. the retrieved information.
Sequence of a website call via HTTP
Today, it takes only a fraction of a second to display a website, but highly complex technical processes are behind it. When a user calls up a URL, the DNS protocol first translates the URL entered into an IP address that can be addressed. Then the TCP protocol is used to send an HTTP get request to the HTTP server. The server then responds with header information as well as the content of the website that was requested. This content is usually wrapped in description languages such as HTML, XHTML, CSS stylesheets, Javascript scripts, and many more. These description languages are required to display the desired information graphically in the browser. With the help of programming languages, content can also be generated automatically when it is retrieved.
The various HTTP status codes
As soon as a server answers a request, its message contains an HTTP status code. This is particularly relevant if errors occurred during the retrieval. There are different types of status codes. Status codes with numbers between 100 and 199 contain information that processing is still in progress. This makes it possible to avoid a timeout. Status codes in the range 200 to 299 indicate that processing has been successful. A status code from 300 to 399 indicates a redirect. The HTTP server informs the client under which URL the requested content can now be found. The ranges 400 to 499 and 500 to 599 indicate client-side and server-side errors, respectively.