Я слежу это руководство который использует это default.vcl. Однако при запуске Varnish я получаю следующую ошибку:
* Starting HTTP accelerator [fail]
storage_malloc: max size 1024 MB.
Message from VCC-compiler:
Expected '(' got ';'
(program line 341), at
(input Line 43 Pos 22)
purge;
---------------------#
Running VCC-compiler failed, exit 1
VCL compilation failed
Это означает, что здесь что-то не так с очисткой:
sub vcl_hit {
if (req.request == "PURGE") {
purge;
error 200 "Purged.";
}
}
Я не вижу ничего плохого, может кто-нибудь объяснить?
Спасибо!
Блок кода, который вы использовали, совершенно верен - на самом деле я использую почти идентичный с моей настройкой Varnish (и я предполагаю, что многие другие тоже).
Как следует из ошибки, существует проблема с purge
. поскольку purge
был представлен только в Varnish 3.x, если вы используете предыдущую версию Varnish (2.x), команда будет нераспознана, и компиляция завершится неудачно. Вы можете определить свою версию Varnish, запустив varnishd -V
.
Если вы используете предыдущую версию Varnish и не можете выполнить обновление, эквивалентная команда: set obj.ttl = 0s;
.
Varnish поддерживает актуальные репозитории для дистрибутивов Ubuntu / Debian и RHEL / CentOS на своих страница загрузки.