Tek bir ESI ile Varnish yoluyla yüklenmekte olan temel bir PHP sayfam var, bunlar arasında bir çerez ayarlamak için sunucuya geri arama var. Çerez, alan adı erişimi ve benzeriyle ayarlanır, ancak ESI aracılığıyla çağrıldığında çerez hiçbir zaman ayarlanmaz. ESI'ye doğrudan erişim yolu eklerseniz, çerez hiçbir sorun olmadan ayarlanır. Varnish konfigürasyonumu, VCL'nin kurabiyeyi öldürdüğünü düşünerek hiçbir şeyi önbelleğe almamam için ayarladım.Bir ESI içinden nasıl bir tanımlama bilgisi belirlersiniz: komut dosyası içerir?
<esi:include src="/init.php?<?=http_build_query($_GET); ?>"></esi:include>
... Bu içermektedir
Bu ... ...
<?php
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
setcookie('superman', 'clark kent', 0, '/', '.whatever.com');
?>
Ben Vernik ve ESI ile yeniyim, bu yüzden bu bir olup olmadığını merak etmeye başlıyorum Bilinen sınırlama (ESI ile veya Varnish'in ESI uygulamasıyla), ancak benim sorunum hakkında herhangi bir tartışmayı çevrimiçi ortamda bulamıyorum.
Suck. Evet, kurabayı ayarlamak için javascript rotasına gidebilirdim, ancak çeşitli nedenlerden dolayı bunu yapmak zorunda kalmayı umuyordum. Bunu kesmek için olası bir yol bulmaya çalışacağım sanırım, ama şimdi mümkün olandan emin değilim, özellikle Vernik'teki hafif ESI uygulamasıyla. –