Nginx 根据URL请求参数转发

2018-03-20 21:33:07
1958次阅读
0个评论
使用场景:

    需要根据截取URL动态配置跳转路径,常见于访问内网不固定ip地址的文件图片,


请求地址:http://11.19.1.212:82/bimg4/32.52.62.42:222/DownLoadFile?filename=LOC:12/data/20180101/15/f3kykhksf083404deed15269c


实际需要访问的内网地址:http://32.52.62.42:222/DownLoadFile?filename=LOC:12/data/20180101/15/f3kykhksf083404deed15269c
nginx配置文件


server {  
    listen 83;  
    server_name localhost;  
    index index.html index.htm;  
  
    root D: /workspace-xxxx/xxx_Web;  
  
    error_page 500 502 503 504 / 50x.html;  
    location = /50x.html {  
            root   html;  
        }  
    location ^~ /xxx/ {  
        proxy_pass http: //192.168.60.36:8090/xxxx/;  
        proxy_redirect default;  
        proxy_set_header Host $host;  
        proxy_set_header X - Real - IP $remote_addr;  
        proxy_set_header X - Forwarded - Host $host;  
        proxy_set_header X - Forwarded - Server $host;  
        proxy_set_header X - Forwarded - For $proxy_add_x_forwarded_for;  
        proxy_set_header Upgrade $http_upgrade;  
        proxy_set_header Connection "Upgrade";  
    }
# 此处为截取请求地址中bimg4之后的路径,并赋给转发地址  
    location ^ ~ / bimg4 / {  
        if ($request_uri~ / bimg4 / (. * )) {  
            set $bucketid $1;  
        }  
        proxy_pass http: //$bucketid;  
    }  
  
}


收藏00

登录 后评论。没有帐号? 注册 一个。