FAQs : What is HTTP?
In order to fetch a web page for you, your web browser
must "talk" to a web server somewhere else.
When web browsers talk to web servers, they speak a
language known as HTTP, which stands for HyperText Transfer
Protocol. This language is actually very simple and
understandable and is not difficult for the human eye
to follow.
The method by which World Wide Web pages are transferred
over the network.
A Simple HTTP Example
The browser says:
GET / HTTP/1.0
Host: www.boutell.com
And the server replies:
HTTP/1.0 200 OK
Content-Type: text/html
<head>
<title>Welcome to Boutell.Com, Inc.!</title>
</head>
<body>
The rest of Boutell.Com's home page appears here
</body>
The first line of the browser's request, GET / HTTP/1.0,
indicates that the browser wants to see the home page
of the site, and that the browser is using version 1.0
of the HTTP protocol. The second line, Host: www.boutell.com,
indicates the web site that the browser is asking for.
This is required because many web sites may share the
same IP address on the Internet and be hosted by a single
computer. The Host: line was added a few years after
the original release of HTTP 1.0 in order to accommodate
this.
The first line of the server's reply, HTTP/1.0 200
OK, indicates that the server is also speaking version
1.0 of the HTTP protocol, and that the request was successful.
If the page the browser asked for did not exist, the
response would read HTTP/1.0 404 Not Found. The second
line of the server's reply, Content-Type: text/html,
tells the browser that the object it is about to receive
is a web page. This is how the browser knows what to
do with the response from the server. If this line were
Content-Type: image/png, the browser would know to expect
a PNG image file rather than a web page, and would display
it accordingly.
A modern web browser would say a bit more using the
HTTP 1.1 protocol, and a modern web server would respond
with a bit more information, but the differences are
not dramatic and the above transaction is still perfectly
valid; if a browser made a request exactly like the
one above today, it would still be accepted by any web
server, and the response above would still be accepted
by any browser. This simplicity is typical of most of
the protocols that grew up around the Internet.
|