Skip to main content


The HTTP (Hyper Text Transfer Protocol) is a protocol used to transmit data over networks. HTTP is a generally accepted technical standard that establishes how a web client communicates with a server so that the data requested by the client can be loaded and displayed.

General information

Along with URL and HTML, HTTP is one of the most important concepts on the Internet (www). It was developed in the early nineties and now exists in its current version 1.1, which is registered in the RFC2616 standard. [1]

The protocol establishes two different types of messages, the client request and the server-to-client solution. Each of these messages consists of two parts, the HTTP header and the HTTP body. The header contains metadata about the body of the message, such as the characters used (encoding) and the content type (for example, HTML document). The HTTP body contains the data that will be displayed later to the client.

The TCP / IP protocol is used to transfer this data reliably between the server and the client. It acts as a host-to-host transport layer. Data on the Internet is structured according to a seven-layer model (OSI model), in which the HTTP protocol is used only in the last three layers (application, presentation and session).


When a client sends a TCP request for a document from an Internet address (URL), the server responds with a response that always includes an HTTP status code. The status code provides information on whether the request was successful or not and sends a three-digit code in the HTTP header to the client. If a requested resource was not found, for example, error code 404 may be issued.

However, the HTTP protocol is not only used for the transmission of HTML resources, but it can also be used to transport other data formats when they are integrated through interfaces. The resource doesn't even have to be on the server. Dynamic web pages can be created with PHP or ASP.NET when called by the client. Since HTTP is an open object-oriented protocol, other types of data can easily be implemented. But HTTP is a stateless protocol. This means that sessions and session IDs will not be stored as part of the communication between the client and the server. This only happens in the web client or in the user's browser, for example, with an HTTP cookie.

The key functions of the HTTP protocol are the request procedures. They regulate the transmission of real data. Using HTTP GET, the most commonly used method, files, for example, can be downloaded from the server. By sending a URI (Uniform Resource Identifier), which is a unique identifier, to the server, you will be able to identify which resource you have to return. From the user's perspective, this is done by accessing a link or URL. The server or host will return the requested document along with a status code to the web client.

In principle, all computers or networks involved can follow the communication between client and server that takes place through HTTP. Hence, HTTPS was developed. A protocol that enables encryption and authentication to protect transmitted data against access by third parties.

Relevance for search engine optimization

The HTTP protocol and related technical details are important for SEO because search engine crawlers rely on HTTP to access websites. A crawler acts as a user agent or web client when searching for websites and content on a page, and initially sends a request to the server using request procedures.

Depending on the server model, webmasters have different options available to configure the server for the crawler to have access. Basic settings can be made in the robots.txt file and a .htaccess file stored on the server can specify these settings. Even modules, like mod-rewrite on Apache servers, can be used in conjunction with the .htaccess file to make the appropriate settings.

In particular, the issuance of error codes should be avoided, as search engines cannot crawl these pages and will consequently give you a poor rating. In the case of dynamic URLs, it would be advisable to rewrite them in static URLs. This can be achieved through redirects in htaccess or bypasses like mod-rewrite on Apache servers. Permanent redirects (301) should be chosen to convey link popularity.[2]

Web Links