ProxyPassMatch 正则表达式不匹配
ProxyPassMatch regex does not match
使用 Apache 2.2.15,我试图设置一个 ProxyPassMatch 规则,仅当 "year" 参数等于 2015 时才匹配以下请求:
/my-servlet/DownloadPdf?param1=40978659700000&year=2015¶m3=testrv%2540rv.com
我知道以下配置符合我的要求并且有效:
ProxyPassMatch /my-servlet/(.*)$ balancer://mycluster
但我想要这样的东西,但它不起作用:
ProxyPassMatch /my-servlet/(.*year=2015.*)$ balancer://mycluster
我也尝试了其他匹配请求的正则表达式,但未成功:
ProxyPassMatch /my-servlet/.*year=2015.* balancer://mycluster
ProxyPassMatch /my-servlet/.*year=2015.*$ balancer://mycluster
我不明白我的配置有什么问题?
The path is the name of a local virtual path; url is a partial URL for the remote server and cannot include a query string.
没有测试,但可能的解决方法:
RewriteEnginge On
RewriteCond %{QUERY_STRING} year=2015
RewriteRule (.*) balancer://mycluster [P]
让我们知道它是否完成了工作,如果没有完成则更是如此 ;)
使用 Apache 2.2.15,我试图设置一个 ProxyPassMatch 规则,仅当 "year" 参数等于 2015 时才匹配以下请求:
/my-servlet/DownloadPdf?param1=40978659700000&year=2015¶m3=testrv%2540rv.com
我知道以下配置符合我的要求并且有效:
ProxyPassMatch /my-servlet/(.*)$ balancer://mycluster
但我想要这样的东西,但它不起作用:
ProxyPassMatch /my-servlet/(.*year=2015.*)$ balancer://mycluster
我也尝试了其他匹配请求的正则表达式,但未成功:
ProxyPassMatch /my-servlet/.*year=2015.* balancer://mycluster
ProxyPassMatch /my-servlet/.*year=2015.*$ balancer://mycluster
我不明白我的配置有什么问题?
The path is the name of a local virtual path; url is a partial URL for the remote server and cannot include a query string.
没有测试,但可能的解决方法:
RewriteEnginge On
RewriteCond %{QUERY_STRING} year=2015
RewriteRule (.*) balancer://mycluster [P]
让我们知道它是否完成了工作,如果没有完成则更是如此 ;)