Here is an example HTTP request and response sequence for Google�s logo image, logo.gif (see Figure 9-4).
Figure 9-4. Google�s logo: back to the future
First the browser requests the image:
GET /intl/en_ALL/images/logo.gif HTTP/1.1
Accept: */*
Referer: http://www.google.com/
Accept-Language: en-us
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705;
.NET CLR 2.0.50727; .NET CLR 1.1.4322; Media Center PC 4.0)
Proxy-Connection: Keep-Alive
Host: www.google.com
One of Google�s servers replies with the following:
HTTP/1.1 200 OK
Content-Type: image/gif
Last-Modified: Wed, 07 Jun 2006 19:38:24 GMT
Expires: Sun, 17 Jan 2038 19:14:07 GMT
Server: gws
Content-Length: 8558
Date: Tue, 23 Oct 2007 23:21:55 GMT
This image was last modified June 7, 2006 and includes an Expires
header set to January
17, 2038, far into the future. In its minimalist reply header, Google does not use
the Cache-Control
header, an entity tag (ETag), or the Accept-Ranges
header.