Varnish Cache не будет включать ESI - PullRequest
4 голосов
/ 01 апреля 2011

У меня проблемы с получением даже самого простого из Varnish Cache Тесты ESI на работу.
После попытки и попытки я подумал, что спрашиваю здесь.

В основном это не будет включать файл ESI. Это просто возвращается HTML без этого включает.

Вот моя команда запуска лака:

varnishd -f /etc/varnish/default.vcl -s malloc,128M -T 127.0.0.1:2000 -a 0.0.0.0:8080;

Вот URL, с которым я тестирую:

http://vbox.local:8080/varnish-tests/test.php

Мои правила vcl:

1) default.vcl

backend default {  
.host = "127.0.0.1";  
.port = "80";  
}  

sub vcl_fetch {  

  if (req.url ~ "test.php") {  
      esi;  /* Do ESI processing */  
      set beresp.ttl = 24h;  
  } elseif (req.url ~ "esi_1.php") {  
      set beresp.ttl = 1m;  
  }  
return(deliver);  
}  

Мой тестовый код esi

2) test.php

<html>  
<head>  

<?php echo "Time 1: ".time(); ?>  

<br />  

The time 2 is: <esi:include src="/varnish-tests/esi_1.php"/> at this very moment.  

</body>  
</html>  

php к esi включает

3) esi_1.php

<?php
echo "Time 2: ".time();  
?>

Я пробовал много вариантов вышеуказанных правил vcl.
Все не работают. Просто не вижу, где я иду не так?

Любой совет / помощь высоко ценится.

Спасибо.

Ответы [ 4 ]

5 голосов
/ 01 апреля 2011

Проблема в том, что Varnish и mod_deflate в настоящее время плохо работают вместе.

Удаление deflate.conf и deflate.load решило проблему.

Приветствия.

1 голос
/ 29 мая 2011

Попробуйте протестировать с Varnish 3.0 beta1. Одна из его основных новых функций - полная поддержка сжатия (что означает, что теперь он работает и с ESI):

https://www.varnish -software.com / блог / лакокрасочные кэш-30-бета-1-из

При этом вы, вероятно, не будете ничего менять в настройках обработки сжатия apache / php.

0 голосов
/ 24 февраля 2014

для лака 3.x

в vcl_fetch, мне пришлось добавить:

set beresp.do_esi = true;
0 голосов
/ 01 апреля 2011

Учитывая последнюю ошибку, эта запись в блоге может иметь отношение .

Кажется, что некоторые версии Varnish плохо обрабатывают сжатый контент. Есть ли у вас PHP для сжатия gzip? У вас есть программное обеспечение веб-сервера, на котором установлен PHP для выполнения сжатия gzip?

Лак также может подавить плохо сформированный контент, хотя здесь это маловероятно ...

К сожалению, у меня сейчас нет идей.

...