背景
有很多码子在写代码遇到一个问题,再和第三方对接交互的时候,一般会有一个回调接口提供给第三方(微信,支付宝等),传统做法就是 把自己的服务打包再部署到一个有外网地址的服务器上,比如阿里云 腾讯云这些,然后把这些地址配置到第三方平台上面,在调试。这样感觉确实很繁琐,如果代码有调整,还需要重新打包部署…,如果第三方能访问本地就可以完全避免这个问题,还可以DEBUG调试程序。
内网穿透技术
内网穿透就是可以将本地电脑的一个端口映射到其它任何一台机器的一个端口,当访问目标机器的端口时,就会自动将请求转到本地电脑上
ngrok
这个技术速度较慢,配置麻烦,不建议使用
FRP
服务端
在github release下载对应系统软件包,我使用的linux系统的,所以下载了frp_0.44.0_linux_amd64.tar.gz
上传文件到服务器端,解压
修改frps.ini
[common]
bind_port = 8080
8080是服务器端和本地的通信的端口
启动:./frps -c ./frps.ini
客户端
一般Windows,直接下载对应的window压缩包
解压文件
修改配置文件frpc.ini
[common]
server_addr = 服务端IP
server_port = 8080
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 8080
remote_port = 8082
当访问服务端的 8082端口时,服务端会将这次请求转到本地电脑的8080端口
本地启动FRP : ./frpc -c ./frpc.ini
测试:访问服务器8082查看本地服务调用成功!