在vcl_recv中,我尝试向网址中包含以下字符的请求发送403:",',<,>,(和)
if(req.url ~ "[\'\<\>()].*\.html" ) {
return (synth(403, "Forbidden"));
}
一切都有效,除了双引号&#34; 我试过正则表达式:
"[\"\'\<\>()].*\.html"
"[\\"\'\<\>()].*\.html"
"[%22\'\<\>()].*\.html"
"[x22\'\<\>()].*\.html"
所有这些都不能使用&#34; varnishd -C -f default.vcl&#34; 我目前在使用varnish-4.1.1 有谁知道怎么逃避&#34;正确?
答案 0 :(得分:3)
答案 1 :(得分:1)
%22
会在Varnish VCL中引用的字符串中给出双引号
答案 2 :(得分:1)
%22为我工作,我需要它在Fastly界面中创建cookie函数
"location_data={%22geo.continent_code%22:%22"client.geo.continent_code"%22,%22geo.country_code%22:%22"client.geo.country_code"%22,%22geo.city.ascii%22:%22"client.geo.city.ascii"%22,%22geo.postal_code%22:%22"client.geo.postal_code"%22};Path=/"