What is HTTP protocol?
HTTP (HyperText Transfer Protocol) is the most popular and basic web protocol. Without this protocol, access to web pages could not be executed. In fact, it dictates the way in which the communication between the web server and the visitor’s machine should take place. Its secure version is HTTPS, set for HTTP over SSL. Henceforth, this version is recommended to ensure the security of exchanges on the web. Some search engines even consider its use on a website to be a SEO benefit.
HTTP’s first version dates back to 1996 by the work of Tim Berners-Lee. However, in 2012, work for HTTP/2 began. It should be noted that this second version is an adaptation of Google’s SPDY protocol for faster navigation. The start of adoption of this version by web browsers was until 2015.
How does HTTP / HTTPS work?
The HTTP protocol operates on a client-server model. This example will illustrate how does a HTTP work.
An Internet user connects to the Internet via his device (computer, mobile, tablet). then, he wants to consult the recipe of an apple cake on his favorite website “example.com”. Therefore, he opens his browser and enters the name of the site in the search bar.
- The web browser, HTTP client connects to the web hosting server where the “example.com” site is located.
- Then, it requests this server, the HTTP server, for the content of this site. It is a HTTP request.
- The HTTP server searches through its files, searches for the corresponding content and responds to the browser.
- The browser receiving the content of the site, interprets and displays it. The user can therefore see the recipe he wants.
These stages of communication take place over a very short period of time, a few milliseconds. Sometimes while browsing the Internet you will not find the content you are looking for but answers such as: Error 404. These are codes by which the web server informs the browser of a problem either with the server, the network, or the browser.
HTTP server examples
These servers are the ones who process and respond to requests from browsers. It can be used locally for testing, for personal projects or small scale projects. Installing and managing the server will be difficult for anyone who does not have sufficient skills. Usually for projects that will be connected to the Internet, it is a good idea to acquire a server from a web host. The latter will have already carried out the installation and the configuration of the HTTP server, you’ll only have to use it. Examples of HTTP servers are:
- Apache Server. It is the most popular HTTP server, offering a modular and scalable architecture. It can be used on Linux distributions as well as on OS X and Windows.
- Nginx. It offers excellent management of simultaneous connections thanks to its asynchronous event architecture. It can be used as a web server, as a proxy server or even a load balancer.
- Node.js. It allows running JavaScript network applications on the server side. Node.js offers an event architecture capable of handling asynchronous inputs and outputs.