Загрузите последнюю версию исходного кода 3.0.3 Varnish и скомпилируйте его . После установки найдите libvmod_std.so
, чтобы подтвердить, что этот модуль также установлен. Затем вы можете запустить лак, чтобы проверить его на новом vcl с помощью import std;
. Для отладки вы можете добавить параметр -d -d
в параметры запуска varnish по умолчанию в файле / etc / default / varnish
. См. man vmod_std
для получения более подробной информации о стандартном модуле лака. У меня он отлично работает для этой версии.
При установке по умолчанию файл vcl помещается в / usr / local / etc / varnish
, а двоичные файлы - в / usr / local / bin / varnish *
и varnishd можно найти в / usr / bin /
. Вам нужно изменить следующее в файле init. d файл запуска /etc/init.d/varnish
, потому что он отличается от установки с помощью apt-get.
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/sbin/varnishd
Также измените путь к файлу vcl в / etc / default / varnish
, например,
-f /usr/local/etc/varnish/default.vcl
. Теперь вы сможете запускать и останавливать недавно скомпилированный лак, как если бы вы использовали varnish, установленный с помощью apt-get. .
Не могли бы вы обновить лак на вашем компьютере с помощью этой команды:
aptitude upgrade varnish
Это должно решить проблему. Если нет, прокомментируйте и попытайтесь найти другое исправление.
Наконец-то мне удалось обновить Varnish до 3.0.3, следуя инструкциям на официальном сайте: https://www.varnish-cache.org/installation/ubuntu
Чтобы использовать репозиторий varnish-cache.org, выполните следующие действия
curl http://repo.varnish-cache.org/debian/GPG-key.txt | sudo apt-key add -
echo "deb http://repo.varnish-cache.org/ubuntu/ lucid varnish-3.0" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install varnish
Они предоставляют пакеты только для выпусков LTS Ubuntu, а не для всех промежуточных выпусков. Итак, он говорит lucid
, но отлично работает с oneric
(11.10).
После обновления Varnish до 3.0.3 я могу перезагрузить sudo service varnish
и import std;
теперь работает нормально.