我的正则表达式出了问题,不知道它有什么问题。它返回的是一个带有orls/f
而不是orls/f?p=4550
的URi。当我通过https://secure.toto02.com/orls/myservice/f?p=4550
我的conf文件位于
之下 location ~ "^/([a-zA-Z]+)/myservice/(.+)$" {
error_log /var/log/nginx/error-server.log notice;
rewrite_log on;
#proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://192.168.3.45:8080/orls/$2;
proxy_redirect http://192.168.3.45:8080/orls/ https://secure.toto02.com/$1/myservice/ ;
}
有人可以帮忙吗?
答案 0 :(得分:2)
捕获位置不会包含查询字符串。您必须通过$is_args
和$args
变量手动包含它,如下所示:
proxy_pass http://192.168.3.45:8080/orls/$2$is_args$args;