Мне нужно очистить или заблокировать кеш, который был изменен небезопасным запросом. Я нашел решение, которое работает с лаком 3.0; однако я использую лак 4. Кажется, это уже неправильный синтаксис.
sub vcl_recv {
if ( req.request == "POST" || req.request == "PUT" ) {
ban("req.url == " + req.url);
return(pass);
}
}
Это дает мне ошибку
Jun 26 17:43:21 test varnishd[2127]: Symbol not found: 'req.request' (expected type BOOL):
Jun 26 17:43:21 test varnishd[2127]: ('/etc/varnish/default.vcl' Line 13 Pos 10)
Jun 26 17:43:21 test varnishd[2127]: if ( req.request == "POST" || req.request == "PUT" ) {
Jun 26 17:43:21 test varnishd[2127]: ---------###########--------------------------------------
Jun 26 17:43:21 test varnishd[2127]: Running VCC-compiler failed, exited with 2
Что я могу сделать, чтобы запросы на очистку / запрет лака были небезопасными?
Спасибо.
В Varnish 4 req.request стал req.method. https://www.varnish-cache.org/docs/4.0/whats-new/upgrading.html