hosts文件的作用
hosts文件是一個沒有擴展名的系統文件,可以用記事本等工具打開,作用就是將一些常用的網址域名與其對應的IP地址建立一個關聯“數據庫”,當用戶在瀏覽器中輸入一個需要登錄的網址時,系統會首先自動從Hosts文件中尋找對應的IP地址,一旦找到,系統會立即打開對應網頁,如果沒有找到,則系統會再將網址提交DNS域名解析服務器進行IP地址的解析。
Hosts文件配置的映射是靜態的,如果網絡上的計算機更改了需要及時更新IP地址,否則將不能訪問。
- 加快域名解析,對於要經常訪問的網站,可以通過在Hosts中配置域名和IP的映射關系,這樣當輸入域名計算機就能很快解析出IP,而不用請求網絡上的DNS服務器
- 方便局域網用戶,在很多單位的局域網中,會有服務器提供給用戶使用。但由於局域網中一般很少架設DNS服務器,訪問這些服務要輸入難記的IP地址,對不少人來說相當麻煩。現在可以分別給這些服務器取個容易記住的名字,然后在Hosts中建立IP映射,這樣以后訪問的時候我們輸入這個服務器的名字就行了
- 屏蔽網站,現在有很多網站不經過用戶同意就將各種各樣的插件安裝到計算機中,有些說不定就是木馬或病毒。對於這些網站可以利用Hosts把該網站的域名映射到錯誤的IP或自己計算機的IP,這樣就不用訪問了
- 順利連接系統,對於Lotus的服務器和一些數據庫服務器,在訪問時如果直接輸入IP地址那是不能訪問的,只能輸入服務器名才能訪問。那么配置好Hosts文件,這樣輸入服務器名就能順利連接了。
最后要指出的是,Hosts文件配置的映射是靜態的,如果網絡上的計算機更改了請及時更新IP地址,否則將不能訪問 - 強制指定某域名對應某IP地址,新建的網站已經上傳到服務器需要調試但是還不想外布訪問,或者不想被蜘蛛抓取到時,可以修改本地hosts文件,這樣只有自己的電腦能通過域名來訪問網站
hosts位置
C:\windows\system32\drivers\etc
添加hosts
按照 ip地址 域名 的格式添加單獨的一行記錄 182.61.171.72 www.axure.com , ip地址和域名之間,要有至少1個空格
localhost和127.0.0.1
localhost是一個域名,127.0.0.1為IP地址。Windows系統中,約定127.0.0.1為本地IP地址。localhost是其對應的域名。配置是在hosts文件中設置的,Windows下該文件位置為:C:\Windows\System32\drivers\etc目錄下hosts文件
HTTP請求過程
- 首先在瀏覽器中輸入網址
- 瀏覽器根據域名解析IP地址
- 瀏覽器根據解析的IP地址與web服務器建立一個TCP連接
- 瀏覽器給服務器發送HTTP請求
- 服務器的永久重定向響應
- 瀏覽器跟蹤重定向地址
- 服務器處理請求
- 服務器發回一個HTTP響應
- 釋放TCP連接
- 客戶端瀏覽器解析HTML內容
其中的第二步就和上面提到的hosts文件有很重要的聯系。瀏覽器訪問網站,要首先通過DNS服務器把要訪問的網站域名解析成一個唯一的IP地址,之后,瀏覽器才能對此網站進行定位並且訪問其數據。
在引入DNS(Domain Name System,域名系統)之前,網絡中的主機是將容易記憶的域名映射到IP地址並將它保存在一個共享的靜態文件hosts中,再由hosts文件來實現網絡中域名的管理。最初Internet非常小,僅使用這個集中管理的文件就可以通過FTP為連入Internet的站點和主機提供域名的發布和下載。每個Internet站點將定期地更新其主機文件的副本,並且發布主機文件的更新版本來反映網絡的變化。
但是,當Internet上的計算機迅速增加時,通過一個中心授權機構為所有Internet主機管理一個主機文件的工作將無法進行。文件會隨着時間的推移而增大,這樣按當前和更新的形式維持文件以及將文件分配至所有站點將變得非常困難,甚至無法完成,於是才有了DNS服務器。
操作系統規定,在進行DNS請求以前,先檢查自己的Hosts文件中是否有這個域名和IP的映射關系。如果有,則直接訪問這個IP地址指定的網絡位置,如果沒有,再向已知的DNS服務器提出域名解析請求。也就是說Hosts的IP解析優先級比DNS要高。