445 字
2 分钟
知识扫盲1:关于localhost和127.0.0.1
最近捣鼓本地部署一些大模型应用,突然发现本地网页可以通过localhost:port
访问,但是却不能通过127.0.0.1:port
访问,所以去详细琢磨了一下这两者的区别。
奇怪的是我以前做的一些全栈项目,当初全凭心情来使用localhost
或是127.0.0.1
来访问也没啥问题,所以也不清楚问题的具体原因。
LocalHost
localhost
是一个主机名称,它是本地服务器名称,在访问localhost
时,它指向本地电脑主机的网络地址,系统会自动把它解析成IP
地址,通常即为本地回环地址127.0.0.1
。但是,它可以被配置为任何IP
地址,包括IPv4
和IPv6
。
127.0.0.1
127.0.0.1
是一个IPv4
地址,它是一个特殊的IP
地址,用于指向本地主机。在计算机网络中,127.0.0.1
被称为回环地址(Loopback Address),它是一个特殊的IP地址,用于测试网络连接和本地服务。
区别
localhost
- 是一个主机名。
- 通常解析为
127.0.0.1
,但解析依赖于系统的hosts
文件配置。
127.0.0.1
- 是一个具体的 IPv4 地址。
- 直接指向本地环回接口。
- 它就是一个
Ipv4
地址,无需解析,但是不支持Ipv6
。
问题重述
文章开头提到的两者不能同时访问的问题,究其原因,很可能是localhost
访问时,系统带的本机当前用户的权限去访问,而用ip
的时候,等于本机是通过网络再去访问本机,可能涉及到网络用户的权限。
总结来说,localhost
是一个主机名,通常解析为127.0.0.1
,但它可以配置为其他地址。而127.0.0.1
是一个固定的IPv4
地址,直接用于环回通信。
知识扫盲1:关于localhost和127.0.0.1
https://blog.kimbleex.top/posts/2023-11-25-compare-local-127001/localhost和127ip的比较/