HTTP协议详解4
http消息报文详解
1、请求头
请求头只出现在HTTP请求中,请求报头允许客户端向服务端传递请求的附加信息和客户端自身信息
HOST
host请求报头域主要用于指定被请求资源的Internet主机和端口号
HOST: www.xxser.com:801
User-Agent
请求报头允许客户端将它的操作系统、浏览器和其他属性告诉服务器
Referer
Referer包含一个URL,代表当前访问URL的上一个URL
Referer: https://www.baidu.com/index.php?tn=monline_6_dg
代表用户从/index.php来到此页面
Cookie:
它是一段文本,常用来表示请求者身份等东西
Range
Range可以请求实体部分的内容,多线程下载会用到次请求头
表示头500字节:bytes=0~499
表示第二个500字节:bytes=500~999
表示最后500字节:bytes=-500
表示500字节以后的范围:bytes=500-
x-forward-for
即XXF头,它代表请求端的IP,可以有多个,中间以逗号隔开。
X-Requested-With: XMLHttpRequest
Accept
Accept请求报头域用于指定客户端接收那些类型的信息
Accept: text/javascript, application/javascript, application/ecmascript, application/x-ecmascript, */*; q=0.01
Accept-Charset
请求报头域用于指定客户端接受的字符集
2、响应头
响应头是服务器根据客户端请求发送的HTTP头
Server
服务器所使用的Web服务器名称
Server: Apache/1.3.6(Unix)
攻击者可以通过查看此头,来探测Web服务器的名称,所以建议在服务器端更改此头信息
Set-Cookie
向客户端设置Cookie,通过查看此头,可以清楚的看到服务器向客户端发送的Cookie信息
Last-Modified
服务器可以通过这个头告诉浏览器,资源的最后修改时间
Location
服务器通过这个头告诉浏览器去访问那个页面,浏览器接受到这个请求后,通常会立刻访问Location头所指向的页面,这个头通常配合302状态码使用
Refresh
服务器通过Refresh 头告诉浏览器定时刷新浏览器
3、普通头
在普通报头中,有少数报头域用于所有的请求和响应消息,但并不用于被传输的实体,只用于传输消息
4、实体头
请求和响应消息都可以传送一个实体头,实体头定义了关于正文和请求所标识的资源的元信息
元信息也就是实体内容的属性包括实体信息类型、长度、压缩方法、最后一次修改时间
Content-Type
实体头用于向接收方向指示实体的介质类型
Content-Encoding
被用于媒体类型的修饰符,它的值指示了已经被应用到实体正文的附加内容编码,因而要获得content-type报头域中所引用的媒体类型,必须采用响应的机制解码
Content-Length
实体报文用于指明实体正文的长度,字节方式存储的十进制数字来表示
Last-Modified
实体报头用于指示资源最后修改日期和时间