regsub 的意外清漆行为

regsub 的意外清漆行为

根据清漆文档,该regsub方法不应导致 301 重定向。然而,在我的例子中似乎发生了这种情况(即 URL 实际上在浏览器中发生了变化)。

我的配置如下:

sub vcl_recv {
    ...
    set req.url = regsub(req.url, "^/event/([-\w]+)/(.*)/$", "/event/\1");
    ...
}

/event/testevent/1234/重定向至/event/testevent

后面有 nginx 和 django varnish-> nginx-> uwsgi->django

答案1

哦,我明白发生了什么...Django 正在向 url 添加一个斜杠并进行重定向。

这是诀窍:

set req.url = regsub(req.url, "^/event/([-\w]+)/(.*)/$", "/event/\1/");

相关内容