localhost 與 127.0.0.1 的區別

原文地址:http://blog.licess.org/localhost-and-127-0-0-1/


localhost與127.0.0.1的區別是什麼?相信有人會說是本地ip,曾有人說,用127.0.0.1比localhost好,能夠減小一次解析。看來這個入門問題還有人不清楚,其實這二者是有區別的。mysql

一、linux

localhost也叫local ,正確的解釋是:本地服務器sql

127.0.0.1在windows等系統的正確解釋是:本機地址(本機服務器)windows

他們的解析經過本機的host文件,windows自動將localhost解析爲127.0.0.1服務器

二、網絡

localhot(local)是不經網卡傳輸!linux下,localhost默認是指unix socket,這點很重要,它不受網絡防火牆和網卡相關的的限制。dom

127.0.0.1是經過網卡傳輸,依賴網卡,並受到網絡防火牆和網卡相關的限制。socket

本機IP 也是經過網卡傳輸的,依賴網卡,並受到網絡防火牆和網卡相關的限制。tcp

可是本機IP與127.0.0.1的區別是:ide

127.0.0.1 只能經過本機訪問

本機IP 經過本機訪問也能經過外部訪問

通常設置程序時本地服務用localhost是最好的,localhost不會解析成ip,也不會佔用網卡、網絡資源。

有時候用localhost能夠,但用127.0.0.1就不能夠的狀況就是在於此。猜測localhost訪問時,系統帶的本機當前用戶的權限去訪問,而用ip的時候,等於本機是經過網絡再去訪問本機,用的到網絡用戶的權限。


Mysql

當主機填寫爲localhostmysql會採用 unix domain socket鏈接

當主機填寫爲127.0.0.1時mysql會採用tcp方式鏈接

相關文章
相關標籤/搜索