我认为B
标志会导致对变量进行url编码,但这是行不通的。
下面的代码将%{QUERY_STRING}
注入而未将&
编码到%26
中。
RewriteRule ^(.*PATTERN.*) http://scooterlabs.com/echo?url=http://host.com/$1?%{QUERY_STRING} [B,P,L]
path/?a=1&b=2
将被代理到http://scooterlabs.com/echo?url=http://host.com/path/?a=1&b=2
,而不是必需的http://scooterlabs.com/echo?url=http://host.com/path/?a=1%26b=2
。
答案 0 :(得分:1)
我可以使用它,但是只能通过设置url cgi脚本来充当apache和prerender之间的代理,从而以可以被prerender解析的方式正确编码url并将cgi脚本用作目标RewriteRule(例如/proxy.cgi/http://host.com/$1?%{QUERY_STRING}
)
代理的主要特征是它不需要将URL代理为url parameter ,而是将其作为cgi PATH_INFO
变量,从而不需要初始问号?
查询令牌。