微信公众号开发者 ip 白名单设置到阿里云负载均衡

2018-07-18 10:25:56 +08:00
 whatever93

自述下,服务器在阿里云,在小公司 web 服务器就一台扛着,现在打算水平扩展 web,然后前边加个负载均衡,可以将 ecs 的弹性 ip 绑定到 slb,但是网上搜了下这个方案,好像有问题,好像行不通,所以想问下 v 友大神们,你们有没有这种环境,是不是成功的,或者有没有其他方案。先多谢各位大神

2752 次点击
所在节点    问与答
15 条回复
whatever93
2018-07-18 10:44:41 +08:00
没人的嘛……
doublleft
2018-07-18 10:47:46 +08:00
好像有问题,好像行不通? 啥问题啊 为啥行不通
torbrowserbridge
2018-07-18 10:48:24 +08:00
不是可以设置多个 IP 的么?你设置 SLB 的 IP,向微信发送请求又不走 SLB,肯定不行了
whatever93
2018-07-18 11:16:05 +08:00
@doublleft 是说因为白名单 IP 问题,导致授权不可用

@torbrowserbridge 那么后端 ecs 多的话要都写上么……我记得只有五个 ip 可以填写
imherer
2018-07-18 11:20:09 +08:00
加了 slb,其实入口就只有一个了啊,那就是 slb 啊
你直接把 sld 加到微信白名单不就行了么
torbrowserbridge
2018-07-18 11:24:14 +08:00
@imherer 这里应该是出口吧?
torbrowserbridge
2018-07-18 11:26:11 +08:00
@whatever93 有一个招数可以解:内部代理。让所有的请求微信 api 的的请求,全部走代理机 IP 出去
torment5524
2018-07-18 11:29:09 +08:00
我这边的模式是 app 选择微信支付,走负载均衡到服务器,服务器连接微信获取订单号等参数,然后回调地址发到 app,app 端打开微信。是这么个过程
负载均衡只是个监听入口,服务器端发起的请求不会去走负载均衡的。如果你也是这个模式,实际是从服务器端发起的,ip 还是你服务器端。
teleme
2018-07-18 11:29:13 +08:00
微信白名单设 slb 的 ip 就好了。我们就是这么做的。
whatever93
2018-07-18 11:39:20 +08:00
@imherer 但是请求微信 api 还是从 ecs 出去的吧 不是从 slb 出去的吧
whatever93
2018-07-18 11:39:31 +08:00
@torbrowserbridge 在想有没有方法让 ecs 的请求从 slb 出去 让微信认为 ip 是 slb 的哪个 ip
whatever93
2018-07-18 11:39:41 +08:00
@torment5524 是的 就是有这个顾虑
whatever93
2018-07-18 11:39:48 +08:00
@teleme 那么获取 token 什么的 都没问题吗……
torbrowserbridge
2018-07-18 11:43:08 +08:00
@whatever93 没办法。slb 是反向代理。你搞一台 ecs 做代理服务器就可以了
torbrowserbridge
2018-07-18 11:48:01 +08:00
我想了一下貌似还有个办法,不知道行不行得通:

1. 新开 slb,反向代理微信 api
2. ecs 配置 hosts 解析,将微信 api 域名解析至上面的 slb 上去

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/471866

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX