任何事情都应该去尝试一下 因为你无法知道什么样的事或者什么样的人将会改变你的一生

0%

内网穿透搭建外网可以访问本地服务器

相应的工具和技术,网络上比比皆是。我目前用的比较多是开源项目localtunnel。也可以试试ngrok

PLAY模式

聊内网穿透到外网之前,先来说说程序员在开发过程中的几种模式。

  • 单机模式:如同单机游戏一样,整个环境的搭建,代码书写、测试,到运行都仅仅在自己的电脑上完成,相关代码都仅仅储存在本地。
  • 单机联网模式:有时候我们可能要外出,电脑又是台式机,不方便随身携带,如果是笔记本电脑,也可能存在没有携带,突然损坏等等导致程序员离了这台电脑就不能开发的问题。为了避免出现这样的问题,通常都会把代码上传到一块公共外网可以访问的空间中,无论是电脑掉海里了,还是被抢劫了,也不会影响我们继续开发写代码。相关的代码管理问题这里就不多说了,GIT相信程序员都不会陌生。
  • 多人模式:在同一个局域网下,小伙伴们是可以手拉手一起开发的,通过局域网IP访问这些电脑,加端口访问相应的本地服务应用。
  • 多人远程模式:这种模式普片存在如今的办公环境中,通过公网相互访问。

模式一般不会单一出现,对于程序员来说这些模式都会穿插在整个生涯中。

为啥要穿透

说了这么多模式,我们知道程序开发一般流程是本地搭建相应程序服务器,安装开发相关依赖。对于单机(个人本地)开发来说,程序员的开发只在自己电脑上书写代码进行本地开发和测试。当我们在家开发好了一个新功能,又办法上传到测试服务器上,供大家在外网访问和测试怎么办?

我们能让别人直接在外网访问我本地localhost服务应用吗?当然是可以的,访问流程如此:外网-局域网-个人电脑。一般基于安全问题,网外是不能直访问类似192.168.0.1这样的IP地址的。但是我们可以做映射,做穿透,间接来访问。

穿透工具

相应的工具和技术,网络上比比皆是。我目前用的比较多是开源项目localtunnel。也可以试试ngrok

网站地址:https://localtunnel.me

代码地址:https://github.com/localtunnel/localtunnel

localtunnel

localtunnel将您的localhost公开给全世界,以便于测试和共享!无需搞砸DNS或进行部署即可让其他人测试您的更改。

非常适合与浏览器测试工具(例如浏览器)或外部api回调服务(例如twilio)一起使用,后者需要使用公共URL进行回调。

快速开始

1
npx localtunnel --port 8000

安装

全局
1
npm install -g localtunnel
作为项目的依赖
1
2
3
npm install localtunnel
#or
yarn add localtunnel

命令行用法

全局安装localtunnel时,只需使用lt命令即可启动隧道。

1
lt --port 8000
此刻赠尔一诗词:正在加载今日诗词....