V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
whatever93
V2EX  ›  问与答

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

  •  
  •   whatever93 · 2018-07-18 10:25:56 +08:00 · 2740 次点击
    这是一个创建于 2346 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

    1. 新开 slb,反向代理微信 api
    2. ecs 配置 hosts 解析,将微信 api 域名解析至上面的 slb 上去
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3631 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 04:19 · PVG 12:19 · LAX 20:19 · JFK 23:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.