localhost與127.0.0.1的區別和本機IP
前兩者是有區別的
localhost也叫local ,正確的解釋是:本地伺服器
127.0.0.1在windows等系統的正確解釋是:本機地址(本機伺服器)
1、127.0.0.1是回送地址,指本地機,一般用來測試使用。回送地址是本機回送地址(Loopback Address),即主機IP堆疊內部的IP地址,主要用於網路軟體測試以及本地機程序間通訊,無論什麼程式,一旦使用回送地址傳送資料,協議軟體立即返回,不進行任何網路傳輸。
2、localhost是本地DNS解析的127.0.0.1的域名,這個你開啟本機的hosts檔案就可以看到,一般位於c:\windows\system32\driver\etc下,一般在最後有這麼一行:
127.0.0.1 localhost
而這個127.0.0.1你可以接著加例如:
127.0.0.1 localhost
127.0.0.1
127.0.0.1 www.blog.com
3、本機IP則指你連到網路上的IP地址,可以是內網地址,當然也可能是公網IP,這個就是你實際利用TCP/IP協議與網上計算機通訊時使用的IP了。
localhot(local)是不經網絡卡傳輸!這點很重要,它不受網路防火牆和網絡卡相關的的限制。
127.0.0.1是通過網絡卡傳輸,依賴網絡卡,並受到網路防火牆和網絡卡相關的限制。
一般設定程式時本地服務用localhost是最好的,localhost不會解析成ip,也不會佔用網絡卡、網路資源。
有時候用localhost可以,但用127.0.0.1就不可以的情況就是在於此。猜想localhost訪問時,系統帶的本機當前使用者的許可權去訪問,而用ip的時候,等於本機是通過網路再去訪問本機,可能涉及到網路使用者的許可權。