Hypertext Transfer Protocol (HTTP) is used by the World Wide Web (WWW) for data communication. HTTP defines the format of request and response messages between a client and a server. For example, your web browser is a client that uses HTTP to communicate with web servers where websites are hosted. When you enter a web address, also known as a uniform resource locator (URL), your web browser sends an HTTP request to the web server, and the server responds by sending the requested web page as hypertext. Hypertext is structured text that, besides actual text, contains hyperlinks, formatting, hidden search words, and other structural elements.
The action to be performed by the server is indicated using one of the methods defined by HTTP. For example, the GET method is used to retrieve data (such as a web page). The POST method requests the server to accept data enclosed in the message body (such as a file or a filled out web form).
Whatever method is used in the HTTP request, the first line of the response is the status line. The status line includes a three-digit status code (such as “404”) and a reason phrase (such as “Not Found”). HTTP defines five groups of status codes:
● 1XX: Informational
● 2XX: Successful
● 3XX: Redirection
● 4XX: Client Error
● 5XX: Server Error
For secure communication, HTTP is layered on top of the Transport Layer Security (TLS) protocol, which was previously known as the Secure Socket Layer (SSL). The result of such layering is HTTP Secure (HTTPS) that enables you to prevent unauthorized access by using authorization for HTTP requests. TLS/SSL are cryptographic protocols for secure communication over computer networks. They are based on the exchange of X.509 certificates and public keys for encrypting and decrypting messages. Digital certificates are issued by a certificate authority (CA) trusted by both parties involved in the communication. A certificate binds the public key to a person or organization for a predetermined period of time (until the certificate expires).
Sending the right HTTP or HTTPS request enables you to collect valuable information about the state of a web server. Based on the timeout of the response, you can estimate the latency of the server. The status code and reason phrase provide you with information about the result of the request. You can also analyze the header and body of the response message. In case of HTTPS, you can also check the number of days left before the certificate expires. Monitoring these parameters is critical to maintaining stable functionality of a web server.
Using the HTTP/HTTPS monitor in Anturis Console, you can set up monitoring of HTTP reachability (availability), response time, response content, and certificate expiration for any hardware component (such as an Apache web server) in your infrastructure.