在百度的抓取工具中我們經常看到的一句就是Connection: close 那麼我們如何把close改為Keep-Alive 呢,修改後又有什麼好處呢?
工具/原料
IIS6.0 win2003伺服器
方法/步驟
1、什麼是Keep-Alive模式?
我們知道HTTP協議採用“請求-應答”模式,當使用普通模式,即非KeepAlive模式時,每個請求/應答客戶和伺服器都要新建一個連線,完成 之後立即斷開連線(HTTP協議為無連線的協議);當使用Keep-Alive模式(又稱持久連線、連線重用)時,Keep-Alive功能使客戶端到服 務器端的連線持續有效,當出現對伺服器的後繼請求時,Keep-Alive功能避免了建立或者重新建立連線。
說明: http 1.0中預設是關閉的,需要在http頭加入"Connection: Keep-Alive",才能啟用Keep-Alive;http 1.1中預設啟用Keep-Alive,如果加入"Connection: close ",才關閉。目前大部分瀏覽器都是用http1.1協議,也就是說預設都會發起Keep-Alive的連線請求了,所以是否能完成一個完整的Keep- Alive連線就看伺服器設定情況。
2、啟用Keep-Alive的優點
從上面的分析來看,啟用Keep-Alive模式肯定更高效,效能更高。因為避免了建立/釋放連線的開銷。
那麼Connection: close 怎麼改成 Connection: Keep-Alive 呢?
在網站上面點選屬性,選擇HTTP頭標籤,然後選擇新增然後“自定義http頭名”這裡填寫Connection。“自定義http值”這裡填寫:Keep-Alive
點選確定
重啟iis在百度抓取工具裡面再抓取一次
好了如上圖所示已經顯示的是:Connection: Keep-Alive