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

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

前言



一般我们在开发的时候都是在内网环境中,服务器访问外部公网接口没问题,但如果出现与第三方接口对接,需要暴露我们的接口供第三方主动调用( 比如支付相关业务 )的情况时,我们内网的 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 协议来保证你的数据安全,当然话说回来,这些玩意儿主要也都只是开发的时候测试用用。好了,又愉快的水了一篇文章,大家再见。

目录
相关文章
|
1月前
|
运维 数据安全/隐私保护
Finalshell 私钥连接服务器
Finalshell 私钥连接服务器
78 0
|
5天前
|
IDE 物联网 网络性能优化
什么是MQTT?如何使用ESP12F芯片连接到MQTT服务器
通过上述步骤,你可以成功地使用ESP12F模块连接到MQTT服务器,发布和订阅消息。MQTT的轻量级和高效性使其非常适合各种物联网应用,而ESP12F模块的强大功能和低成本使其成为实现这些应用的理想选择。
20 0
|
11天前
|
监控 安全 Linux
Linux服务器如何管理sshd的连接
【6月更文挑战第6天】Linux服务器如何管理sshd的连接
15 4
|
11天前
|
弹性计算 Ubuntu Linux
为什么要学习去使用云服务器,外网 IP能干什么,MAC使用Termius连接阿里云服务器。保姆级教学
为什么要学习去使用云服务器,外网 IP能干什么,MAC使用Termius连接阿里云服务器。保姆级教学
|
18天前
|
网络安全 Python
pycharm连接云服务器#潞晨cloud
Luchencloud采用SSH密钥对连接,需先在本地生成公钥并添加到平台
92 0
|
21天前
|
域名解析 缓存 安全
cdn服务器连接异常怎么办
当遇到CDN服务器连接异常时,可采取以下步骤排查:检查CDN配置,包括域名解析和防火墙设置;清空CDN缓存;测试网络连接;确认源服务器状态;更换CDN服务器;等待恢复;联系服务商;检查本地电脑安全;检查程序代码;保持更新和维护。具体解决步骤需根据实际情况调整。
|
22天前
|
云安全 弹性计算 安全
Steam游戏服务器搭建好了,连接服务器错误,一直连不上服务器是什么问题,该怎么办?
Steam作为全球最大的数字游戏分发平台,拥有庞大的用户群体和丰富的游戏资源。然而,就像任何网络服务一样,Steam也偶尔会出现连接至服务器错误或连接问题,这可能导致用户无法顺利下载、更新游戏或进行在线游玩。本文将详细探讨这些连接问题的可能原因,并提供一系列有效的应对策略。
|
22天前
|
消息中间件 弹性计算 物联网
【阿里云弹性计算】阿里云ECS在IoT领域的应用:支撑大规模设备连接与数据处理
【5月更文挑战第26天】阿里云ECS是弹性计算服务,支持IoT设备的连接与数据处理。通过MQTT协议实现设备快速接入,配合消息队列处理异构实时数据。ECS可用于部署数据处理工具、应用服务,如智能家居控制系统,通过弹性伸缩适应负载变化。结合阿里云其他服务,ECS为IoT提供完整解决方案,助力企业数字化转型。
37 0
|
1月前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
27 6
|
1月前
|
监控 Linux 网络安全
Linux服务器如何查询连接服务器的IP
【4月更文挑战第17天】Linux服务器如何查询连接服务器的IP
34 1