The H in HTTP means an hypertext (ie HTML).
The protocol was first designed to transport hypertext (ie HTML) but it has been extended to be able to fetch any type of resources.
HTTP was originally designed to be usable as an interface to distributed object systems.
- gateways proxy (from the public internet to the origin server)
- forward proxy (from the user agent to the public internet)
HTTP allows an open-ended set of methods and headers that indicate the purpose of a request. HTTP is also used as a generic protocol for communication between user agents and proxies/gateways to other Internet systems.
HTTP provides also data transfer.
HTTP is defined in rfc2616 - Hypertext Transfer Protocol – HTTP/1.1.
It is the union of a set of RFCs: