跑本地项目时,你用 localhost 还是 127.0.0.1?

142 阅读2分钟

做开发的小伙伴在跑本地项目时(比如自己搭个博客、写个小网站),一定会使用localhost 或者 127.0.0.1这两个网址来进行预览

比如小编自己搭的Python学习网站(别问链接,还没上线呢😂),想要在本地预览一下,在终端输入启动命令:hexo server -p 4000

就可以在浏览器中通过:http://localhost:4000/ 直接访问Python学习网站

image-20260203上午102643916

但有没有小伙伴好奇过,localhost1127.0.0.1用起来都一样,到底有啥区别?

相同点

  1. 指向本机

    • 不管是输入 localhost 还是 127.0.0.1,最终都会将请求发送到你的电脑,而不是外部网络
  2. 本地测试

    • 在开发中,localhost127.0.0.1 都是用来进行本地测试的一种访问方式
  3. 不用网络

    • 完全依赖于本机的网络,即使电脑没有连接网络,也可以正常预览自己编写的网站

差异点

这是AI给的两者区别的表格,虽然看不懂 😂

区别localhost127.0.0.1
类型域名IP 地址
解析过程需要通过 DNS 或 hosts 文件解析为 IP 地址不需要解析,直接使用
协议版本支持同时支持 IPv4 和 IPv6仅支持 IPv4
访问速度解析时可能稍慢(视 DNS 配置而定)通常更快,因为不需要额外的解析步骤

小编用人话来解释一下吧~

127.0.0.1

  • 它是一个IP地址,类似老家的经纬度坐标(固定不变),不管我们怎么修改和访问,它始终指向本机这台电脑
  • 访问时数据也只在电脑内部流转,不会连接到互联网上(所以没有网络也可以正常访问)

localhost

  • 它是一个主机名,类似家门口挂的“幸福里 101 室”(牌子可能被换掉)
  • 访问时,电脑会先查 hosts 文件的对应关系,看看这个“门牌”对应到哪个 IP(一般默认1127.0.0.1),之后再进行访问
  • 如果 hosts 文件中非默认1127.0.0.1 (比如修改成 192.168.1.100),那 localhost 就不指向本机了,本地预览也可能失败

127.0.0.1 像老家的 GPS 坐标——固定、唯一、不会变

localhost 像老家的 门牌号——可以改,可以重命名,甚至能指向别人家

如何选择

但绝大多数情况下,它俩可以混用,没啥问题

如果平时开发想要快速一些,省去域名解析,就用127.0.0.1

如果以后会更换ip访问,需要绑定域名解析等,优先选择localhost

很多开发框架已经预设好了本地启动命令和访问地址,小伙伴们就按照预设好的网址预览就OK了~