响应首部字段
响应首部字段是由服务器端向客户端返回响应报文中所使用的字段,用于补充响应的附加信息、服务器信息,以及对客户端的附加要求等信息。
Accept-Ranges
Accept-Ranges:bytes
用来告知客户端服务器是否能处理范围请求,以指定获取服务器端某个部分的资源。可以指定的字段值有两种,可以处理范围请求时指定其weightbytes,反之则指定其为none。
Age
Age:600
告知客户端,源服务器在多久前创建了响应。字段值得单位为秒。若创建该响应的服务器是缓存服务器,Age值是指缓存后的响应再次发起认证到认证完成的时间值。代理创建响应时必须加上首部字段Age。
ETag
告知客户端实体标识。当资源更新时,ETag值也需要更新。生成ETag值时,并没有统一的算法规则,而仅仅是由服务器来分配。
Location
使用首部字段Location可以将响应接收方引导至某个与请求URI位置不同的资源。该字段会配合3xx:Redirection的响应,提供重定向的URI。
Retry-After
Retry-After:120
告知客户端在多久之后再次发送请求。主要配合状态码503 Service Unavailable响应,或3xx Redirect响应一起使用。
Server
首部字段Server告知客户端当前服务器上安装的HTTP服务器应用程序的信息。不单单会标出服务器上的软件应用名称,还有可能包括版本号和安装时启用的可选项。
Vary
当代理服务器接收到带有Vary首部字段指定获取资源的请求时,如果使用的Accept-Language字段的值相同,那么就直接从缓存返回响应。反之,则需要先从源服务器端获取资源后才能作为响应返回。
WWW-Authenticate
用于HTTP访问认证。它会告知客户端用于访问请求URI所指定资源的认证方案(Basic或是Digest)和带参数提示的质询。状态码401 Unauthorized响应中,肯定带有首部字段WWW-Authenticate。
实体首部字段
实体首部字段是包含在请求报文和响应报文中的实体部分所使用的首部,用于补充内容的更新时间与实体相关的信息。
Allow
Allow:GET,HEAD
用于通知客户端能够支持Request-URI指定资源的所有HTTP方法。服务器接收到不支持的HTTP方法时,会以状态码405 Method Not Allowed作为响应返回。与此同时,还会把所有能支持HTTP方法写入首部字段Allow后返回。
Content-Encoding
Content-Encoding:gzip
告知客户端服务器对实体的主体部分选用的内容编码方式。内容编码是指在不丢失实体信息的前提下所进行的压缩。
Content-Language
告知客户端,实体主体使用的自然语言
Content-Length
表明了实体主体部分的大小
Content-Location
表示报文主体返回资源对应的URI。
针对范围请求,返回响应时使用的首部字段Content-Range,能告知客户端作为响应返回的实体的哪个部分符合范围请求。
Expires
将资源失效的日期告知客户端。缓存服务器在接收到含有首部字段Expires的响应后,会以缓存来应答请求,在Expires字段值指定的时间之前,响应的副本会一直被保存。当超过指定的时间后,缓存服务器在请求发送过来时,会转向源服务器请求资源。
Last-Modified
指明资源最终修改的时间。
为Cookie服务的首部字段
管理服务器与客户端之间状态的Cookie,虽然没有被编入标准化中,但在Web网站方面得到了广泛的应用。
Cookie的工作机制是用户识别及状态管理。Web网站为了管理用户的状态会通过Web浏览器,把一些数据临时写入用户的计算机内。接着当用户访问该Web网站时,可通过通信方式取回之前发放的Cookie。调用Cookie时,由于可校验Cookie的有效期,以及发送方的域、路径、协议等信息,所以正规发布的Cookie内的数据不会因为来自其他Web站点和攻击者的攻击而泄露。
Set-Cookie
当服务器准备开始管理客户端的状态是,会事先告知各种信息