gpt4 book ai didi

Varnish vcl_backend_response检测vcl_recv返回(哈希)

转载 作者:行者123 更新时间:2023-12-03 17:47:27 28 4
gpt4 key购买 nike

在端口 80 上使用 varnish 5.1 的多网站设置中,我不想缓存所有域。
这在 vcl_recv 中很容易完成。

if ( req.http.Host == "cache.this.domain.com" ) {
return(hash);
}

return(pass);

现在在 vcl_backend_response 我想对缓存的域做一些处理。

当然我可以做 if( bereq.http.Host == "cache.this.domain.com"),但是有没有办法知道它是来自 vcl_recv 的 return(hash) 还是 return(pass) 调用在 vcl_backend_response 内?

我认为这可能有意义,但找不到信息。

谢谢你的帮助。

最佳答案

确实让我感到奇怪的是,为什么首先需要进行这样的处理。

我认为没有办法直接告诉您如何进入vcl_backend_response。因此,我想您可以设置一个标志并稍后进行检查,即:

sub vcl_recv {
if ( req.http.Host == "cache.this.domain.com" ) {
set req.http.return_type = "hash";
return(hash);
}
set req.http.return_type = "pass";
return(pass);
}

sub vcl_backend_response {
if( bereq.http.return_type == "pass" ) ...
}

关于 Varnish vcl_backend_response检测vcl_recv返回(哈希),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46027613/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com