Referer и условный код кэша Varnish не работают

Я проверяю $ _SERVER [«HTTP_REFERER»] в PHP, который работает нормально и на основе значения referer пытается показать пользователю другой ползунок через условие if, но его не работающее четное условие становится истинным. Я думаю, что это происходит из-за сервера кэша лака, который показывает всегда кэшированный контент. Пожалуйста, помогите, как я могу добиться того же с сервером лака.

1

Решение

По умолчанию 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

При этом все версии будут храниться как разные записи и будут соответствующим образом обрабатывать совпадения кеша.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]