localhost和127.0.01 區別
筆者最近除錯程式時遇到的乙個問題,localhost不能訪問但127.0.0.1可以訪問。
我估計大多數人都不會去想localhost到底與127.0.0.1有什麼不同,就比如我,有時候用http://localhost/來訪問本地伺服器網頁,有時則用來訪問,我覺得他們是通用的表示本地伺服器的兩個不同的寫法而已,就好比乙個網頁可以通過網域名稱來訪問也可以通過ip來訪問一樣,localhost代表的是網域名稱,而127.0.0.1則代表ip位址。
localhost
127.0.0.1
本機ip
網路不聯網
不聯網聯網
傳輸不使用網絡卡,不受防火牆和網絡卡限制
網絡卡傳輸,受防火牆和網絡卡限制
網絡卡傳輸,受防火牆和網絡卡限制
訪問本機訪問
本機訪問
本機或外部訪問
ps:通過本機host檔案,windows自動將localhost解析為127.0.0.1,可以修改
另外,我現在也應該明白了乙個道理,那就是一般設定程式時本地服務用localhost是最好的,localhost不會解析成ip,也不會占用網絡卡、網路資源。
修改host檔案用記事本開啟c:/windows/system32/drivers/etc/hosts檔案,看是否有127.0.0.1 localhost 。如果沒有則將其新增進去,再檢視能否訪問localhost。
1、開啟internert資訊管理檢視iis是否啟動,且預設**時候已經開啟;
2、開啟 看是否能訪問iis的預設網頁,能訪問則說明iis已經成功安裝到電腦上,可能是無法解析localhost;
3、開始--命令(cmd)--ping localhost,看是否能ping通,從127.0.0.1上返回資訊,如果成功則說明可以解析localhost;
4、如果上一步不成功,則用記事本開啟c:/windows/system32/drivers/etc/hosts檔案,看裡面是否有包含:127.0.0.1 localhost ,如果沒有則將其新增進去,再檢視能否訪問localhost。
5、嘗試將**的主目錄指向另乙個目錄或新建乙個虛擬目錄,並在該新目錄建立乙個新的網頁檔案,如index.html,然後將其加到預設**的"文件"項中作為預設訪問的網頁,重新輸入**:http://localhost/,看否能訪問。
6、還是不行的話將iis解除安裝掉,重新再安裝一次。
127.0.0.1是回送位址,指本地機,一般用來測試使用。回送位址(127.x.x.x)是本機回送位址(loopback address),即主機ip堆疊內部的ip位址,主要用於網路軟體測試以及本地機程序間通訊,無論什麼程式,一旦使用回送位址傳送資料,協議軟體立即返回,不進行任何網路傳輸。
ip位址由兩部分組成,即網路位址和主機位址。網路位址表示其屬於網際網路的哪乙個網路,主機位址表示其屬於該網路中的哪一台主機。二者是主從關係。ip位址的四大型別標識的是網路中的某台主機。ipv4的位址長度為32位,共4個位元組,但實際中我們用點分十進位制記法。
ip位址根據網路號和主機號來分,分為a、b、c三類及特殊位址d、e。全0和全1的都保留不用。
中文名回送位址
外文名localhost
本地機127.0.0.1
網路連線
網路上的芳鄰
用 途
網路測試以及本地機程序間通訊
在有類ip位址的規定中,第一部分是1~126為a類位址,128~191為b類位址,那麼中間留的127.0.0.1被稱為本地回環位址,主要作用有兩個:一是測試本機的網路配置,能ping通127.0.0.1說明本機的網絡卡和ip協議安裝都沒有問題;另乙個作用是某些server/client的應用程式在執行時需呼叫伺服器上的資源,一般要指定server的ip位址,但當該程式要在同一臺機器上執行而沒有別的server時就可以把server的資源裝在本機,server的ip位址設為127.0.0.1也同樣可以執行。
對於大多數習慣用localhost的來說,實質上就是指向127.0.0.1這個本地ip位址。在作業系統中有個配置檔案(windows中路徑為c:\windows\system32\drivers\etc\hosts,unix/linux路徑為/etc/hosts)將localhost與127.0.0.1繫結在了一起。
127.0.0.1對於**建設者來說是常常用到的。
大家常用「ping 127.0.0.1」命令在本機上做迴路測試,用來驗證本機的tcp/ip協議簇是否被正確安裝。但你發現了嗎?使用「ping 127.1」這個命令也能得到同樣的測試結果,其實「ping 127.1」和「ping 127.0.0.1」這兩條命令是一樣的,都是在進行迴路測試。
為什麼會這樣呢?這就是ping命令應用中ip位址的使用技巧。大家都知道,ip位址由32位二進位制數字組成,為了方便大家記憶,將每8位二進位制數字換算成十進位制數字,因此就形成了容易記憶的由四部分十進位制數字組成的ip位址(如127.0.0.1)。由於,windows作業系統具有自動填充 「.0」的功能,因此我就可將「127.0.0.1」變為「127.1」。
但是,這個「.0」的省略是有條件限制的,並不能任意省略。在ping命令的應用中,只能將在ip位址的最後一部分十進位制數字前出現的乙個或多個「.0」省略,如把「ping 127.0.0.1」命令改寫成「ping 127.1」。
如果這乙個或多個 「.0」沒有緊挨著最後一部分的十進位制數字,而是在其他位置,則這個「.0」不能省略,如「ping 202.0.96.1」就不能寫成「ping 202.96.1」。這是因為「ping 202.96.1」返回的結果是「202.96.0.1」的應答資訊,而不是「202.0.96.1」的應答資訊。
1在批處理中
相信大多數懂一點批處理的人都見過類似於「ping 127.1 -n 5 >nul」這樣的命令。
其實批處理作者的目的肯定不是測試網路,而是為了讓批處理執行延時。
這個命令的意思是讓批處理執行到這裡時延遲4秒在繼續執行下面的命令(ping命令每隔一秒試探一次,第一次試探在執行時就試探過了,所以5次試探是延遲4秒),後面》nul 的意思是不在螢幕上顯示資料,達到延遲執行又不對批處理造成絲毫影響的目的。產生的效果就是乙個白色的閃動符號閃動等待。
2在網路鏈結中
127.0.0.1特別注意
收到127.0.0.1的響應表示主機的ip配置正確。此響應來自網路層。但是此響應並不代表位址、掩碼、和閘道器配置正確。它也不能說明有關網路協議族下層的任何狀態。此方法只是測試網路層的ip聯通性。
TCP IP網路協議基礎TCP IP網路協議基礎
1.tcp ip網路協議基礎 tcp ip transmission control protocol internet protocol 是傳輸控制協議和網路協議,就是電子裝置如何連入網際網路,並且之間怎麼通訊。tcp ip 不是乙個協議,而是乙個協議族的統稱,裡面包括了 ip 協議 icmp 協...
localhost和127 0 0 1的區別
很多人會接觸到這個ip位址127.0.0.1。也許你會問127.0.0.1是什麼位址?其實127.0.0.1是乙個回送位址,指本地機,一般用來測試使用。大家常用來ping 127.0.0.1來看本地ip tcp正不正常,如能ping通即可正常使用。對於大多數習慣用localhost的來說,實質上就是...
127 0 0 1和localhost的區別
很多人會接觸到這個ip位址127.0.0.1。也許你會問127.0.0.1是什麼位址?其實127.0.0.1是乙個回送位址,指本地機,一般用來 測試使用。大家常用來ping 127.0.0.1來看本地ip tcp正不正常,如能ping通即可正常使用。對於大多數習慣用localhost的來說,實質上就...