Я пытаюсь настроить Varnish для обработки включений ESI в локальной среде.
Я запускаю лак на виртуальной машине, а контент работает на хост-машине.
У меня есть два файла "index.html" и "test.html". Оба они хранятся в папке с именем «esi» в корневом каталоге документа сервера Apache.
index.html
<h1>It Works!</h1>
<esi:include src="test.html" />
test.html
<p>ESI HAS BEEN INCLUDED</p>
Varnish работает на виртуальной машине через порт 8000. Доступ к нему можно получить здесь: http://192.168.56.101:8000/esi/
в /etc/varnish/default.vcl на виртуальной машине я добавил следующую конфигурацию в конец файла:
sub vcl_fetch {
set beresp.do_esi = true; /* Do ESI processing */
set beresp.ttl = 24 h; /* Sets the TTL on the HTML above */
}
С идеей, что он должен обрабатывать ESI для ВСЕХ запросов (не важно, что это плохая практика, просто пытаясь заставить эту вещь работать :))
Результат, когда я загружаю http://192.168.56.101:8000/esi/:
<h1>It Works!</h1>
<esi:include src="test.html" />
т.е. ESI отображается в разметке, не обрабатывается.
Я проверил журнал Varnish, однако там нет ошибок и ничего, связанного с ESI.
Может ли кто-нибудь увидеть, что я делаю неправильно здесь? Дайте мне знать, если потребуется дополнительная информация .. спасибо