我有一个处理重定向的Varnich配置文件。以这个工作示例为例:
if(req.http.X-bare ~ "/faq/?$") {
return(synth(301,req.http.x-redir+"/faq-new?business=redir_mydomain.com&"+req.http.x-query+"#"));
}
这可以按预期工作。但是,如果我要匹配的URL包含应该转义的字符,我无法使其工作,例如:
if(req.http.X-bare ~ "/faq\?foo=bar/?$") {
return(synth(301,req.http.x-redir+"/faq-new?business=redir_mydomain.com&"+req.http.x-query+"#"));
}
在上述情况下,未进行匹配,我看不到预期的重定向。
答案 0 :(得分:0)
这似乎有效:
if(req.url ~ "/faq\?foo=bar/?$") {
return(synth(301,req.http.x-redir+"/faq-new?business=redir_mydomain.com&"+req.http.x-query+"#"));
}
所以使用'req-url'而不是'req.http.X.bare'。