http header 詳解

HTTP(HyperTextTransferProtocol)即超文本傳輸協議,目前網頁傳輸的的通用協議。
HTTP協議採用了請求/響應模型,瀏覽器或其餘客戶端發出請求,服務器給與響應。
就整個網絡資源傳輸而言,包括message-header和message-body兩部分。
首先傳遞message-header,即httpheader消息 。
http header 消息一般被分爲4個部分:general header, request header, response header, entity header。
可是這種分法就理解而言,感受界限不太明確。
根據維基百科對http header內容的組織形式,大致分爲Request和Response兩部分。

Requests部分
Header 解釋示例
  Accept -- 指定客戶端可以接收的內容類型Accept: text/plain, text/html 
  Accept-Charset -- 瀏覽器能夠接受的字符編碼集。 Accept-Charset: iso-8859-5 ;
  Accept-Encoding -- 指定瀏覽器能夠支持的web服務器返回內容壓縮編碼類型。
  Accept-Encoding -- compress, gzip
  Accept-Language -- 瀏覽器可接受的語言Accept-Language: en,zh
  Accept-Ranges -- 能夠請求網頁實體的一個或者多個子範圍字段Accept-Ranges: bytes
  Authorization -- HTTP受權的受權證書Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
  Cache-Control -- 指定請求和響應遵循的緩存機制Cache-Control: no-cache
  Connection -- 表示是否須要持久鏈接。(HTTP 1.1默認進行持久鏈接)Connection: close
  CookieHTTP -- 請求發送時,會把保存在該請求域名下的全部cookie值一塊兒發送給web服務器。
  Cookie -- $Version=1; Skin=new;
  Content-Length -- 請求的內容長度 Content-Length: 348
  Content-Type -- 請求的與實體對應的MIME信息Content-Type: application/x-www-form-urlencoded
  Date -- 請求發送的日期和時間Date: Tue, 15 Nov 2010 08:12:31 
  GMTExpect -- 請求的特定的服務器行爲Expect: 100-continueFrom發出請求的用戶的EmailFrom: user@email.com
  Host -- 指定請求的服務器的域名和端口號Host: www.zcmhi.com
  If-Match -- 只有請求內容與實體相匹配纔有效If-Match: 「737060cd8c284d8af7ad3082f209582d」
  If-Modified-Since -- 若是請求的部分在指定時間以後被修改則請求成功,未被修改則返回304代碼If-Modified-Since: Sat, 29 Oct 2010 19:43:31 GMT
  If-None-Match -- 若是內容未改變返回304代碼,參數爲服務器先前發送的Etag,與服務器迴應的Etag比較判斷是否改變If-None-Match: 「737060cd8c284d8af7ad3082f209582d」
  If-Range -- 若是實體未改變,服務器發送客戶端丟失的部分,不然發送整個實體。參數也爲EtagIf-Range: 「737060cd8c284d8af7ad3082f209582d」If-Unmodified-Since只在實體在指定時間以後未被修改才請求成功If-Unmodified-Since: Sat, 29 Oct 2010 19:43:31 GMT
  Max-Forwards -- 限制信息經過代理和網關傳送的時間 Max-Forwards: 10
  Pragma -- 用來包含實現特定的指令 Pragma: no-cache
  Proxy-Authorization -- 鏈接到代理的受權證書 Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
  Range -- 只請求實體的一部分,指定範圍 Range: bytes=500-999
  Referer -- 先前網頁的地址,當前請求網頁緊隨其後,即來路 Referer: http://www.zcmhi.com/archives/71.html
  TE -- 客戶端願意接受的傳輸編碼,並通知服務器接受接受尾加頭信息 TE: trailers,deflate;q=0.5
  Upgrade -- 向服務器指定某種傳輸協議以便服務器進行轉換(若是支持) Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
  User-Agent -- User-Agent的內容包含發出請求的用戶信息 User-Agent: Mozilla/5.0 (Linux; X11)
  Via -- 通知中間網關或代理服務器地址,通訊協議 Via: 1.0 fred, 1.1 nowhere.com (Apache/1.1)
  Warning -- 關於消息實體的警告信息 Warn: 199 Miscellaneous warning

Responses 部分
Header解釋示例
  Accept-Ranges -- 代表服務器是否支持指定範圍請求及哪一種類型的分段請求Accept-Ranges: bytes
  Age -- 從原始服務器到代理緩存造成的估算時間(以秒計,非負)Age: 12
  Allow -- 對某網絡資源的有效的請求行爲,不容許則返回405Allow: GET, HEAD
  Cache-Control -- 告訴全部的緩存機制是否能夠緩存及哪一種類型Cache-Control: no-cache
  Content-Encoding -- web服務器支持的返回內容壓縮編碼類型。Content-Encoding: gzip
  Content-Language -- 響應體的語言Content-Language: en,zh
  Content-Length -- 響應體的長度Content-Length: 348
  Content-Location -- 請求資源可替代的備用的另外一地址Content-Location: /index.htm
  Content-MD5 -- 返回資源的MD5校驗值Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==
  Content-Range -- 在整個返回體中本部分的字節位置Content-Range: bytes 21010-47021/47022
  Content-Type -- 返回內容的MIME類型Content-Type: text/html; charset=utf-8
  Date -- 原始服務器消息發出的時間Date: Tue, 15 Nov 2010 08:12:31 GMT
  ETag -- 請求變量的實體標籤的當前值ETag: 「737060cd8c284d8af7ad3082f209582d」
  Expires -- 響應過時的日期和時間Expires: Thu, 01 Dec 2010 16:00:00 GMT
  Last-Modified -- 請求資源的最後修改時間Last-Modified: Tue, 15 Nov 2010 12:45:26 GMT
  Location -- 用來重定向接收方到非請求URL的位置來完成請求或標識新的資源Location: http://www.zcmhi.com/archives/94.html
  Pragma -- 包括實現特定的指令,它可應用到響應鏈上的任何接收方Pragma: no-cache
  Proxy-Authenticate -- 它指出認證方案和可應用到代理的該URL上的參數Proxy-Authenticate: Basicrefresh應用於重定向或一個新的資源被創造,在5秒以後重定向(由網景提出,被大部分瀏覽器支持)



Refresh: 5; url=http://www.zcmhi.com/archives/94.html
  Retry-After -- 若是實體暫時不可取,通知客戶端在指定時間以後再次嘗試Retry-After: 120
  Server -- web服務器軟件名稱Server: Apache/1.3.27 (Unix) (Red-Hat/Linux)
  Set-Cookie -- 設置Http CookieSet-Cookie: UserID=JohnDoe; Max-Age=3600; Version=1
  Trailer -- 指出頭域在分塊傳輸編碼的尾部存在Trailer: Max-Forwards
  Transfer-Encoding -- 文件傳輸編碼Transfer-Encoding:chunked
  Vary -- 告訴下游代理是使用緩存響應仍是從原始服務器請求Vary: *Via告知代理客戶端響應是經過哪裏發送的Via: 1.0 fred, 1.1 nowhere.com (Apache/1.1)
  Warning -- 警告實體可能存在的問題Warning: 199 Miscellaneous warning
  WWW-Authenticate -- 代表客戶端請求實體應該使用的受權方案WWW-Authenticate: Basic html

 

轉自:http://blog.chinaunix.net/uid-26284318-id-3351914.htmlweb

相關文章
相關標籤/搜索