<WOS> <AE> <ML>
+--------------------+ +------------+ +-----------+
| WeChat Open Server | <=====> | Aliyun ECS | <====> | My Laptop |
+--------------------+ +------------+ +-----------+
传统方式
ML
上开发代码,打包部署到 AE
上运行,然后与 WOS
联调。
问题
AE
上开发工具简陋,调试效率低;ML
通常在内网没有独立对外 IP,致使WOS
不能直连。
改进方式
思路是将 AE
作为透传代理。 实现方式如下:
SSH 远程转发
ML> ssh -R '8080:localhost:12306' {AE}
在 ML
上执行上面的命令连接 AE
, 将 AE
上所有 8080
端口的请求转发到 ML
的 12306
端口上。
这里会遇到一个坑,
SSH
默认只会转发所有到127.0.0.1:8080
的数据。显然这不是我们想要的,然而Aliyun ECS
上即便修改GatewayPorts=yes
也无法实现转发来自对外 IP 的数据,故此有了下面的办法。
NC 本地转发
AE> nc --sh-exec "nc localhost 8080" -l 80 --keep-open
在 AE
上执行上述命令, 实现监听 80
端口并将所有数据透传到本地的 8080
端口。
Enjoy!
如果你有更好的办法, 还请不吝赐教:)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。