VCL中有没有办法分割一长行代码?

问题描述 投票:0回答:1

我不知道如何在 VCL 中分割一长行代码。我已经检查了 Varnish docs 和 Fastly 的,除了关于 VTC 文件的 this 之外,我找不到任何东西,我也测试过这些文件,但不能使用字符串,可能是由于缩进。

我很难相信该语言不允许分割长行,或者文档没有一个示例。

if (req.url.path ~ "^/stuff/otherstuff/(?:[a-z0-9_]+)(?:/(?:2018|2018_2019|2019|2019_2020|2020|2020_2021|2021|2021_2022|2022|2022_2023|2023|2023_2024|2024))?(?:/(?:cool|story|bro)(?:/.*)?)?/?$") {
    # do something
}
syntax varnish varnish-vcl fastly
1个回答
0
投票

你是对的,在 VCL 中无法本地执行此操作。

但是,Uplex 的人员有一个 VMOD,能够以更灵活的方式处理正则表达式。这将允许您在多行上连接正则表达式。

参见 https://code.uplex.de/uplex-varnish/libvmod-re

© www.soinside.com 2019 - 2024. All rights reserved.