Итак, моя проблема: у меня большой проект symfony 2.3, лак 5. Поэтому я хочу включить некоторый фрагмент с помощью функции symfony render_esi(). После каждой проблемы я хочу понять, почему не содержит никакого файла, даже просто test.php. Проблема в том, что он не содержит никакого контента, но тег esi: include src "..." Я не вижу. Хорошо, давайте посмотрим, все конфиги:Varnish symfony esi: tag удалить, но без содержания
Symfony: config.yml
esi:
enabled: true
fragments:
path: /_fragments
some.html.twig:
<h2>Here must be content</h2>
{{ render_esi(url('esi_megamenuBanners')) }}
{{ render_esi(controller("OstrovWebBundle:Frontend/Page:megamenuBanners")) }}
<esi:include src="https://mo.loc/test.php">
<h2>end content</h2>
Его три различных способа, которые я пытался стрелять ESI ,
Varnish конфигурации:
sub vcl_recv {
#Add a Surrogate-Capability header to announce ESI support.
set req.http.Surrogate-Capability = "abc=ESI/1.0";
}
sub vcl_backend_response {
if (beresp.http.Surrogate-Control ~ "ESI/1.0") {
unset beresp.http.Surrogate-Control;
set beresp.do_esi = true;
}
}
Я проверил оба заголовки суррогаты управления и суррогаты Capability - они существуют.
Кстати, я использую nginx: https -> лак -> nginx: http: 8080 -> проект symfony.
Я трачу много времени на эксперименты, и я не нашел никакого решения ... Скажите, пожалуйста, где моя ошибка?
В вашем файле app.php вы используете AppCache? Если так, попробуйте отключить его. – Carlos
Нет, я не использую его. –