4

vcl_recv で、URL に次の文字を含むリクエストに 403 を送信しようとしています: ",',<,>,(, and )

if(req.url ~ "[\'\<\>()].*\.html" ) {
  return (synth(403, "Forbidden"));
}

二重引用符を除いてすべてが機能します」私は次のような正規表現を試しました:

"[\"\'\<\>()].*\.html"
"[\\"\'\<\>()].*\.html"
"[%22\'\<\>()].*\.html"
"[x22\'\<\>()].*\.html"

それらはすべて「varnishd -C -f default.vcl」でコンパイルされません。私は現在 varnish-4.1.1 を使用しています。「を正しくエスケープする方法を知っている人はいますか?

4

2 に答える 2