前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >让世界连接你的本地服务器

让世界连接你的本地服务器

作者头像
凌虚
发布2020-07-18 18:20:56
1.9K0
发布2020-07-18 18:20:56
举报
文章被收录于专栏:Node Python Go全栈开发

前言


一般我们在开发的时候都是在内网环境中,服务器访问外部公网接口没问题,但如果出现与第三方接口对接,需要暴露我们的接口供第三方主动调用( 比如支付相关业务 )的情况时,我们内网的 IP 地址显然是外部无法访问的,因此需要有相应的手段应对:第一种方案,配置路由器什么的,比较麻烦;第二种方案,将工程项目部署到公网可访问的服务器上( 比如各种云服务器什么的 ),小题大做;第三种方案,接着看下去。

ngrok


Expose your local server to the internet. 服务器依旧运行在你的本地环境中,使用 ngrok 即可将其暴露给公网,ngrok 会随机生成一个已经验证过的域名地址,外网访问此域名地址,ngrok 则会在自己的服务器上做地址的转换并建立与你本地服务器的连接通道以传递客户端与服务器之间的数据( 就是一个中间人的角色 )。

使用示例


安装 ngrok :前往官网下载并解压即可。

准备服务器:简单的 hello word 即可,如下图

随后启动原有的 node 服务器,nodemon、forever、pm2 原来是怎么启动的,现在也怎么启动。

见证奇迹的时刻:

ngrok http 3000

随后你将会看到下图所示:

咯,公网地址给你了,http 和 https 的都行,为了验证能不能访问,我们在浏览器中输入这个地址试试( 这里没有更改本地 DNS 的 host 文件,所以是当成公网访问的 ),结果如下图:

事实证明有效。

ngrok 在全球有四个服务器,默认使用的是位于美国的服务器,为了提升下响应速度,我们可以使用新加坡的服务器,设置 region 即可:

ngrok http 3000 -region ap

其它的 https 服务器也好、授权认证也好、还是 TLS/TCP 连接,ngrok 都没问题,具体怎么用自己看官方文档吧。

localtunnel


localtunnel 是在 github 上开源的库,而且是 MIT 协议( 如果你对这些协议不了解可以去翻翻我很早之前写的文章 「 被忽视的 License 」),这个项目使用的是个人服务器,只有一个而且在美国,而且不怎么稳定,就因为它开源,所以我还是提一下,毕竟精神可嘉,但是还是建议用 ngrok 。

结束语


ngrok 非常简单实用,虽然它本身是中间人,但是你完全可以使用 https 协议来保证你的数据安全,当然话说回来,这些玩意儿主要也都只是开发的时候测试用用。好了,又愉快的水了一篇文章,大家再见。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-05-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Node Python Go全栈开发 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档