你是不是也刷到过这种梗:
有人说,我用 AI 做了一个项目,欢迎大家访问。
结果一看地址:
http://localhost
或者:
http://127.0.0.1
评论区就开始笑。
当然,有些人可能是在玩梗。
但也有些人,可能是真的不知道。
为什么好笑?
因为这个地址,看起来像一个网站地址。
但你把它发给别人,别人根本打不开。
这不是因为你的项目一定没做出来。
而是因为它现在只是在你自己的电脑上跑起来了。
从你自己能打开,到别人也能访问,中间还差一步。
这一步,就叫部署上线。
一天一个 vibe coding 小技巧:从这一小节开始,我们进入部署篇。
但这一篇先不讲具体怎么部署上线。
我们先把这个梗讲明白:
localhost 到底是什么。

为什么它只能你自己打开。
为什么别人拿到同一个地址,却打不开。
一、这个梗到底在笑什么
先说 localhost。
localhost,翻成大白话,就是“我这台电脑自己”。
127.0.0.1 也是同一个意思。
它们指向的,不是互联网上某个公开的网站。
而是当前这台设备自己。
你在自己的电脑浏览器里输入 localhost,浏览器找的是你的电脑。
所以你的项目只要在你电脑上跑着,你就能打开。
但你朋友在他的电脑上输入 localhost,浏览器找的就不是你的电脑了。
它找的是他自己的电脑。
可你的项目并没有跑在他的电脑上。
所以他当然打不开。
这就是这个梗真正好笑的地方:
很多人以为自己发出去的是项目地址。
其实发出去的是“每个人自己电脑”的地址。
你发给别人,不是在把别人带到你的项目里。
而是在让别人打开他自己的电脑。
那要怎么样才能让别人访问呢?
这时候就需要部署上线。
它解决的就是:
别人能不能通过一个地址,稳定访问到你的项目。
二、还有一种地址,也很容易搞混
除了 localhost 和 127.0.0.1,你可能还见过一种地址:
192.168.x.x
比如很多路由器后台,用的就是 192.168.1.1 这种地址。
你自己开发项目时,也可能用类似的地址打开电脑上正在运行的项目。
但它和 127.0.0.1 不是一回事。
127.0.0.1 指的是这台设备自己。
192.168.x.x 指的是这台设备在当前这个小网络里的地址。
其他设备要在这个小网络里找到它,用的就是这个地址。
这个小网络,后面我们再叫它局域网。
先分清这两种地址,再看局域网就顺了。
三、局域网:小范围里能访问
局域网,就是一个小范围里的网络。
最常见的例子,就是你家里的 Wi-Fi。
你的电脑、手机、平板,都连着同一个 Wi-Fi,这时候它们就是在同一个局域网里。
如果你的项目在电脑上跑着,而且配置允许外部设备访问。
那手机在同一个 Wi-Fi 下,就有可能通过电脑的局域网地址打开它。
这种地址一般是 192.168.x.x 这样的格式。
比如你的电脑在局域网里的地址是 192.168.1.8,项目端口是 3000。
那同一个 Wi-Fi 下的手机,就可能通过 http://192.168.1.8:3000 打开这个项目。
这也是开发时很常见的一种联调方式。
比如你做后端,同事做前端。
你把自己电脑上的后端服务开放到局域网,同事在同一个网络下,就能用你的局域网地址来调接口。
反过来也一样。
如果你做了一个手机端网页,也可以让手机连同一个 Wi-Fi,用电脑的局域网地址打开,看看真机上是不是正常。
但这里有两个前提。
第一,你们得在同一个局域网里。
第二,你的项目启动方式要允许局域网里的其他设备访问。
有些开发工具默认只允许本机访问。
这种情况下,就算你知道电脑的 192.168.x.x 地址,手机也不一定进得来。
还可能被电脑防火墙拦住。
所以你实际测试时,会看到两种情况:
如果项目只认 localhost 或 127.0.0.1,那基本只有你自己这台电脑能打开。
如果项目允许局域网访问,并且你用的是电脑的 192.168.x.x 地址,同一个网络里的其他设备才可能打开。
但它还是有范围的。
只有在这个小圈子里的人,才可能访问到。
你朋友不在你家 Wi-Fi 里,就访问不了。
所以,能被局域网里的其他设备打开,已经比 localhost 往外走了一步。
但它还只是在一个小圈子里。
再往外看,有些公司还有更大的内部网络。
四、内网:圈子里面能访问
内网,你可以先理解成一个更大的内部网络。
比如公司内部系统。
人在公司网络里,可以打开。
离开公司网络,就打不开。
再比如一些云服务内部,也会有只给内部机器互相通信的私有网络。
这里顺带说一下公司服务器。
很多人的第一个项目,可能就是给公司做一个小工具。
这类项目经常会被放到公司的服务器上。
但公司服务器不一定就是内网。
判断标准不是服务器放在哪里。
而是它到底开放给谁访问。
如果这台服务器只能在公司网络里访问,或者必须连公司网络才能访问,那它就是内网里的服务。
比如内部管理系统、公司自己的测试系统、只给员工用的后台。
它们不是给全世界普通用户直接访问的。
但有些公司服务器,是专门对外提供服务的。
比如公司官网、用户后台、对外开放的接口。
这类服务器如果要让外面的人访问,通常要有对外访问入口。
还要按要求办好备案等对外访问手续,并且放开访问策略。
这些都处理好以后,普通用户在公司外面也能访问。
这时它就不是单纯的内网服务了。
它已经是在走公网访问。
内网和局域网的共同点是:
都有一个圈子。
圈子里面的人能访问。
圈子外面的人进不来。
区别只是圈子大小和使用场景不同。
家里的 Wi-Fi 是很小的圈子。
公司、组织、云服务里的私有网络,是更正式、更大的圈子。
五、公网:真正让外面的人访问
公网,就是普通用户通过互联网能访问到的网络。
你平时打开一个网站,输入一个所有人都能访问的地址。
不管你在家里、公司、学校,还是用手机流量,只要网络正常,都能打开。
这才是多数 vibe coding 新人理解中的“项目上线”。
也就是说:
localhost,只给自己访问。
局域网,是一个小范围里能访问。
内网,是某个组织或私有圈子里能访问。
公网,才是外面真实用户能访问。
所以那个 localhost 的梗,本质上不是在笑“项目没写出来”。
它是在提醒你:
你现在只是本地跑通了。
还没有走到公网访问。
中间缺的那一步,就是部署上线。
六、三种网络的安全性
解释清楚了这些,想必很多人最关心的应该就是三种网络的安全性。
很多 vibe coding 新人第一个项目,可能就是给公司写一个降本增效的小工具。
这时候,你就会遇到一个选择:
放在公司内部能访问的范围里,还是放到公网上。
这里先不展开安全细节。
如果只看访问范围,你可以用以下原则进行判断:
暴露面越小,风险通常越低。
所以大致可以理解成:
localhost 暴露面最小,局域网和内网其次,公网最大。
localhost 只在你自己这台设备里访问,外面的人正常情况下进不来。
所以它的暴露面最小。
而局域网和内网,暴露面比 localhost 大。
但它们通常还在一个圈子里。
比完全公开到公网要小。
所以如果你完全没有技术背景,也不是非要给外部用户使用。
那优先放在公司内部能访问的范围里,会更稳妥。
当然,这也不是绝对安全的。
因为圈子里的人、同一个 Wi-Fi 下的设备、公司网络里的其他机器,都可能访问到它。
同时,如果代码本身不安全,一旦公司网络被攻破,项目里的重要资料也可能泄露。
所以不能因为它在内网,就完全不管安全。
具体的代码安全问题,本合集前面讲过两篇,感兴趣的可以往前面翻翻。
最后是公网。
它的暴露面最大。
因为它面向真实外部用户。
只要真实用户能访问,想测试你系统漏洞的人,也能看到这个入口。
所以公网是三种网络环境里暴露面最大的。
最后:总结
这一篇你只需要记住一条线:
localhost 能打开,只说明项目在你自己的电脑上跑起来了。
局域网能打开,说明它可能在一个小范围里能访问。
内网能打开,说明它在某个私有圈子里能访问。
公网能打开,才意味着外面真实用户能访问。
而部署上线要解决的,就是把项目从“我自己能打开”,一步步变成“别人也能稳定访问”。
所以,以后再看到“我做了个项目,地址是 localhost”这个梗,你就知道它在说什么了。
不是项目一定没做。
而是它还停在本地。
还没有真正部署上线。