nginx根据url中的参数进行转发

在实际项目中,由于https安全策略,我们无法直接跳转到我们想要跳转到的地址

例如 url:https://abc.dc.com/image?url=https://vpic.video.qq.com/1641213/p0685fxrwij.png

我们想要的效果直接访问以下地址:

https://vpic.video.qq.com/1641213/p0685fxrwij.png

如果是在代码中,我们可以通过正则表达式,字符串截取,xpath等方式很容易获取以上地址。

但我这边想要达到的效果是:我们直接请求服务器,服务器自动去识别并访问到我需要的资源,如果你的项目中用到了nginx,那么我要恭喜你,你离成功只差一步了,哈哈。

鉴于有些小盆友可能对nginx还不太熟悉,我简单介绍一下:

 Nginx是一个高性能的HTTP和反向代理服务,可以用于搭建轻量级web服务器及反向代理服务器,可以通过反向代理实现负载均衡,支持高并发,占用内存率比较小,nginx可以配置多个域名映射同一映射地址。

我们言归正传把,在nginx.conf增加以下配置信息

 resolver 8.8.8.8; #配置域名进行访问的时候,需要配置此项目,否则会报502错误

location ~/image {
      if ($query_string ~*  ^(.*)url=(.*)$){
           set $imageUrl $2;
           proxy_pass $imageUrl;
      }
 }

重启nginx即可生效

 

关注本人订阅号:IT技术乱弹,获取更多信息。
---------------------
作者:柯之梦
来源:CSDN
原文:https://blog.csdn.net/yin4302008/article/details/85453259
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章