/端口映射

Created Fri, 08 Mar 2024 16:36:43 +0900
457 Words

背景

起因是为了某个项目的进行调试复现bug。但是项目已经快要被砍掉了,所以测试环境早在很久之前就关闭了(但是来了问题还得解决…)。 那么自然而然的就会想到本地搭建一套测试环境出来,进行本地调试。但是在搭建好了db和前后端等环境后发现有一个问题,那就是中间接入了Outh2.0认证,这个Outh2.0认证的callback地址是固定的。那么我需要吧他的CALLBACK地址映射到本地上。

解决方案

要做的不止是dns代理,还需要转发端口。

那么这里,我们假设 ①前端开启在本地localhost,端口为8080。 ②callback地址为http://www.test.com。 ③本地环境为macBook

dns代理

dns代理好说,直接修改/etc/hosts文件即可。

# 把www.test.com代理到本地(127.0.0.1)
127.0.0.1   www.test.com

端口转发

#这里使用了第三方软件,socat。
#brew安装socat
brew install socat
#启动端口转发,使用守护进程方式
socat TCP-LISTEN:80,fork TCP:127.0.0.1:8080 &

总结

其实这个问题解决很简单,但是因为之前没有接触过,所以做一下记录。