nginx根据参数路由

业务场景:

提供服务的服务固定返回地址场景(银行/支付等服务)

A和B服务同时使用C提供的服务,C的回调(通知)地址是固定的,A和B都需要拿到C对应业务的返回值

例如A请求是  C.com/xxx?state=A_123

例如B请求是  C.com/xxx?state=B_456

其中state为A和B请求C服务URL参数信息,C回调通知时会原样返回state信息

C处理完成后固定返回到nginx.com/router?state=xxx

那Nginx配置如下:

location /router {
      if ($arg_state ~ A_(.*)){
      rewrite ^.*$  https://A.COM/a permanent;
      }
      if ($arg_state ~ B_(.*)){
      rewrite ^.*$  https://B.COM/b permanent;
      }
      
    }

其中$arg_state ~ A_(.*) 表示匹配URL参数中以A_开头的请求,如果规则匹配那将地址重定向到 

https://A.COM/a

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>