加速blog:HTTP Header

系列:网站提速
查看该系列所有文章

本文隶属加速blog系列

1.HTTP请求和相应Header

一个经典的HTTP连接是,读者通过浏览器(下称为浏览器端),向服务器(下称为服务器端)申请浏览某网页,通过发送请求Header的方式。服务器端接受到浏览器端的请求后,生成用户需要的文件,发回响应Header。大致示意图为

比如浏览阅微堂首页时,浏览器端向服务器端发送的请求Header如下:

Host zhiqiang.org 请求的域名
User-Agent Mozilla/5.0... 浏览器端浏览器型号和版本
Accept text/xml,application/xml ... 可接受的内容类型
Accept-Language zh-cn,zh;q=0.5 语言
Accept-Encoding gzip,deflate 可接受的压缩类型
Accept-Charset UTF-8,* 可接受的内容编码
Cookie user=someone 浏览器端的用户COOKIE
If-Modified-Since Wed, 14 Nov 2007 02:01:00 GMT 浏览器端的缓存的最后修改时间
If-None-Match "2a541d-5b45-efde6f00" 浏览器端的缓存文件地标识符

而服务器端的响应Header大致为:

Date Wed, 14 Nov 2007 05:11:47 服务器端时间
Server Apache/2.2.6 服务器端的服务器软件
Last-Modified Wed, 14 Nov 2007 01:38:50 最后修改时间
Etag "39457e-6234-a0983e80" 文件标识符
Content-Encoding gzip 传送启用了GZIP压缩
Content-Length 8562 内容长度
Content-Type text/html 内容类型

至此,一个HTTP请求结束。浏览器端接收到页面内容后,如果页面响应header的类型是text/html,表明这是一个网页,浏览器把它以网页的形式显示出来。在显示的过程中,有可能又引用新的页面内容(比如css, javascript, flash, 图片等),浏览器又会向服务器端发送新的请求。直至页面完全载入完毕为止。

2.如何察看页面的请求和响应Header?

由于请求和响应header里包含了相当多信息(以后我们将多次遇到它),特别是响应Headers,我们应该时刻留意它们。这些信息无法直接获取,需要依靠第三方工具。

2.1.Firefox下的firebug

Firefox安装firebug插件后,可以很方便的查看每个文档的响应信息,而且firebug的功能不限于如此,它是调试网页的必备之物。初识Firebug 全文 — firebug的使用有更详细的介绍和上手教程。

2.2.IE下的Fiddler2

IE下的对应工具是fiddler2,就察看Header来说是足够了,事实上它能监控IE所产生的一些流量信息。官方说可以用来做IE下的debug,不过我没发现。这里有一个关于fiddler2的介绍(中文)。

写于2007年十一月 17日

6条留言 -> 跳到留言表格
(Required)
(Required, not published)

  B | I | U | D | 添加链接 | 插入引用 | 插入代码 | 插入表情 | | + | ?

guest | 注册 | 管理

阅微堂

理工科背景的证券从业人员
Loading...
Loading...
Loading...