2023-06-11 分類: 網(wǎng)站建設(shè)
有時候我們在調(diào)試程序的時候,會出現(xiàn)一些莫名其妙匪夷所思的奇怪問題,localhost不能訪問但127.0.0.1可以訪問的問題就是其中之一。
我估計(jì)大多數(shù)人都不會去想localhost到底與127.0.0.1有什么不同,就比如我,有時候用http://localhost/來訪問本地服務(wù)器網(wǎng)頁,有時則用http://127.0.0.1/來訪問,我覺得他們是通用的表示本地服務(wù)器的兩個不同的寫法而已,就好比一個網(wǎng)頁可以通過域名來訪問也可以通過IP來訪問一樣,localhost代表的是域名,而127.0.0.1則代表IP地址。
我的理解對不對呢?我們現(xiàn)在來看看更專業(yè)的解讀吧。
localhost與127.0.0.1的概念和工作原理之不同
要比較兩個東西有什么不同,首先要弄清兩者的概念。所以,我們從概念開始。
localhost:也叫l(wèi)ocal ,正確的解釋是:本地服務(wù)器
127.0.0.1:在windows等系統(tǒng)的正確解釋是:本機(jī)地址(本機(jī)服務(wù)器)
一個是“本地”,一個是“本機(jī)”。不過從這兩個詞來看,還是不能比較兩者的區(qū)別。我們再看看他們的工作原理。
localhot:是不經(jīng)網(wǎng)卡傳輸?shù)?,它不受網(wǎng)絡(luò)防火墻和網(wǎng)卡相關(guān)的的限制。
127.0.0.1:是通過網(wǎng)卡傳輸?shù)模蕾嚲W(wǎng)卡,并受到網(wǎng)絡(luò)防火墻和網(wǎng)卡相關(guān)的限制。
通過上述概念和工作原理的比較,我想現(xiàn)在大家都心里有譜了吧,知道localhost與127.0.0.1有什么不同了。文中開頭提到的localhost不能訪問但127.0.0.1可以訪問的問題,究其原因,很可能是localhost訪問時,系統(tǒng)帶的本機(jī)當(dāng)前用戶的權(quán)限去訪問,而用ip的時候,等于本機(jī)是通過網(wǎng)絡(luò)再去訪問本機(jī),可能涉及到網(wǎng)絡(luò)用戶的權(quán)限。
另外,我們現(xiàn)在也應(yīng)該明白了一個道理,那就是一般設(shè)置程序時本地服務(wù)用localhost是最好的,localhost不會解析成IP,也不會占用網(wǎng)卡、網(wǎng)絡(luò)資源。
localhost不能訪問127.0.0.1可以訪問的解決方案
一般情況下ping localhost 應(yīng)該為127.0.0.1 ,但是有時會出來下面這個東西:
>ping localhost
reply from ::1: times<1ms
reply from ::1: times<1ms
reply from ::1: times<1ms
地址根本不是“127.0.0.1”,而是“::1:”
>ping 127.0.0.1 正常
reply from 127.0.0.1 : bytes=32 times<1ms
reply from 127.0.0.1 : bytes=32 times<1ms
reply from 127.0.0.1 : bytes=32 times<1ms
?原因分析:
IPV6協(xié)議將127.0.0.1解析為 ::1 (127.0.0.1 ipv6的形式)
Vista開始菜單中輸入cmd回車后打開命令提示符,輸入ping localhost默認(rèn)的就會出現(xiàn)返回的數(shù)據(jù)包并不是127.0.0.1而是::1。這就是Ipv6格式的本地地址,
?解決方案1:
修改host文件用記事本打開C:/WINDOWS/system32/drivers/etc/hosts文件,看里面是否有包含:
127.0.0.1 localhost
如果沒有則將其添加進(jìn)去,再查看能否訪問localhost。
host文件部分內(nèi)容
# 127.0.0.1 localhost
# ::1 localhost
127.0.0.1localhost
localhost 127.0.0.1
?解決方案2:
1、打開Internert信息管理查看IIS是否啟動,且默認(rèn)網(wǎng)站時候已經(jīng)開啟;
2、打開http://127.0.0.1/ 看是否能訪問IIS的默認(rèn)網(wǎng)頁,能訪問則說明IIS已經(jīng)成功安裝到電腦上,可能是無法解析localhost;
3、開始--命令(cmd)--ping localhost,看是否能ping通,從127.0.0.1上返回信息,如果成功則說明可以解析localhost;
4、如果上一步不成功,則用記事本打開C:/WINDOWS/system32/drivers/etc/hosts文件,看里面是否有包含:127.0.0.1 localhost ,如果沒有則將其添加進(jìn)去,再查看能否訪問localhost。
5、嘗試將網(wǎng)站的主目錄指向另一個目錄或新建一個虛擬目錄,并在該新目錄創(chuàng)建一個新的網(wǎng)頁文件,如index.html,然后將其加到默認(rèn)網(wǎng)站的"文檔"項(xiàng)中作為默認(rèn)訪問的網(wǎng)頁,重新輸入網(wǎng)址:http://localhost/,看否能訪問。
6、還是不行的話將IIS卸載掉,重新再安裝一次。
?解決問題的思路:
1、ping一下localhost,這個是關(guān)鍵,看看是否能ping通,然后看解析到那個ip地址下去了
2、然后查看本機(jī)的hosts文件,看看是否有被修改,如果被修改,就改回正常的模式
3、解決問題本質(zhì),ipconfig看看網(wǎng)絡(luò)是否正常,如果不正常就進(jìn)行修復(fù)
4、用殺毒軟件或者360等修復(fù)軟件進(jìn)行掃描,看看是否存在惡意插件或者病毒,然后清除,一勞永逸!
5、多動腦,想辦法解決問題,善于用搜索引擎。
本文名稱:localhost不能訪問127.0.0.1可以訪問的原因及解決方法
鏈接URL:http://www.rwnh.cn/news36/264436.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、網(wǎng)站內(nèi)鏈、手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站制作、網(wǎng)站建設(shè)、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容