【问题标题】:Varnish - double quotes in conditionalsVarnish - 条件句中的双引号
【发布时间】:2022-03-22 06:46:53
【问题描述】:

运行 Varnish 4.x - 尝试测试“-”,包括双引号。

if (req.url == **'"-"'**) {
    return (synth(200, "ok"));
}

找不到正确的转义字符以在条件语句中包含双引号。有什么想法吗?

【问题讨论】:

    标签: varnish-vcl


    【解决方案1】:

    你试过用%22转义吗?

    if (req.url == "%22-%22") {
      return (synth(200, "ok"));
    }
    

    【讨论】:

    • 这仅适用于支持百分比编码的 Fastly VCL。 Stock VCL 没有。
    【解决方案2】:

    我刚刚遇到了这个问题。从 6.x 开始(至少)您应该能够使用 {"..."} 表示法:

    if (req.url == **{""-""}**) {
        return (synth(200, "ok"));
    }
    

    https://varnish-cache.org/docs/6.6/reference/vcl.html#strings

    【讨论】:

      猜你喜欢
      • 2014-08-27
      • 2018-05-09
      • 2015-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多