清漆:在替换字符串中使用来自正则表达式的匹配

时间:2015-12-21 15:44:07

标签: regex varnish varnish-vcl

Heey all,我正在与Varnish中的以下人员挣扎

if (req.url ~ "/somepath/(.*)/saml/sp/metadata") {
        set req.backend = somebackend_https;
        set req.url = regsub(req.url, "/somepath/(.*)/saml/sp/metadata","$1/saml/sp/metadata");
        set req.http.host = regsub(req.http.host, "^(.*).(.*)", "somehost.nl");
        set req.proto = regsub(req.proto, "^HTTP", "^HTTPS");
        return (lookup);
}

如何从替换字符串中的(。*)获得匹配? 我试过,$ 1,\ 1似乎没什么用。我错过了什么或者我应该以不同的方式解决这个问题吗?

我使用Varnish 3。

已提前感谢!

1 个答案:

答案 0 :(得分:1)

Redithion是对的,\1。之前配置中的另一条路线是我无法解决这个问题的原因:)