.png)
Как проще всего отличить лак:
Эй, процессы Varnish, очистите кэш. И, пожалуйста, не кэшируйте ничего сейчас вообще. Я хочу, чтобы вы сейчас просто передавали все запросы напрямую в бэкэнд. Я дам вам знать, когда захочу, чтобы вы вернулись к нормальной работе.
Я занимаюсь отладкой и итерацией на веб-сайте, но мне надоело постоянно очищать кэш с помощью этой команды между каждым изменением и новым запросом.
varnishadm 'ban req.url ~ "."'
Кроме того, это довольно сложная конфигурация Varnish, которая имеет множество бэкэндов для множества различных веб-сайтов и доменов.
Мне просто нужна самая простая команда, которая заставит Varnish временно принудительно перенаправлять все запросы на бэкэнд.
# this command does not exist
varnishadm 'caching-pause req.url ~ "."'
И соответствующая простая команда для восстановления нормальной работы лака.
# this command also does not exist
varnishadm 'caching-resume req.url ~ "."'
Есть ли какой-то простой способ заставить Varnish временно прекратить кэширование всего?
решение1
Убедитесь, что следующий код VCL находится в /etc/varnish/no-cache.vcl
:
vcl 4.0;
backend default {
.host = "your-host";
.port = "your-port";
}
sub vcl_recv {
return(pass);
}
Затем загрузите VCL следующим образом:
varnishadm vcl.load nocache /etc/varnish/no-cache.vcl
Если вы хотите, чтобы Varnish обходил кэш, выполните следующую команду:
varnishadm vcl.use nocache
Если вы хотите вернуться к обычной работе и ваш обычный VCL называется boot
, просто используйте следующую команду:
varnishadm vcl.use boot
Вы можете использовать его
varnishadm vcl.list
для просмотра списка загруженных файлов VCL и определения того, какой из них активен.