Referer和Varnish缓存条件代码不起作用

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

我正在检查PHP中的$ _SERVER [“HTTP_REFERER”]哪个工作正常并且基于引用值试图通过if条件向用户显示不同的滑块,但是它的工作状态不正常。我认为这是由于清漆缓存服务器始终显示缓存内容而发生的。请帮助我如何实现与清漆服务器相同的功能。

php conditional varnish referer
1个回答
0
投票

默认情况下,Varnish不关心referrer,因此将为所有请求提供相同的缓存页面。

如果您需要不同的缓存匹配规则,则需要使用缓存键中的额外值修改varnish配置:

# defaults for domain and path will still apply, this is just extra
sub vcl_hash {
    hash_data(req.http.Referrer);
}

https://varnish-cache.org/docs/trunk/users-guide/vcl-hashing.html

这会将所有版本存储为不同的条目,并适当地提供缓存匹配。

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