Potrzebuję dołączyć dynamiczną treść do stron statycznych na poziomie serwera WWW. 2 dotychczasowe opcje to Server Side Include (SSI)
i Edge Side Include (ESI)
.
Choć początki SSI
wydają się stare i niejasne (ta strona w pamięci podręcznej z 95 z University of Illinois wydaje się być odniesieniem , najwyraźniej pochodzi z NCSA httpd
serwera, który zasilał około 95% sieci ), ESI
wydaje się , że jest nowsza i cieszy się ( w3 specyfikacje z 2001 roku, napisane głównie przez facetów z Akamai ).
Poza tym wciąż słyszę o Varnish
+ESI
i zastanawiam się, czy to powinno być właściwe rozwiązanie. Jednak mam już instalację w miejscu nginx
, które obsługuje tylko SSI
, i chciałby przestrzegać KISS
zasady i unikać Varnish
, jeśli to w ogóle możliwe.
W moim przypadku bezpośredniego użycia, który będzie obejmował dynamiczny pasek użytkownika u góry każdej strony, uważam, że SSI
wykona to zadanie. Obawiam się jednak, że wraz z rozwojem mojej witryny będę potrzebował tylko obsługiwanych funkcji, ESI
które zmusią mnie do przeprojektowania wszystkiego, co prowadzi do mojego pytania (w końcu czytelnik mówi):
Jakie główne funkcje, które nie są przez SSI
to obsługiwane , sprawiłyby, że wybrałeś ESI
(i odwrotnie)?
Odpowiedzi:
Tagi dla SSI i ESI są tak podobne, że nie martwiłbym się tym zbytnio. Lakier i tak obsługuje tylko najbardziej podstawowe użycie ESI.
Używaj SSI i nginx, ponieważ je masz, a jeśli kiedykolwiek potrzebujesz buforowania Varnish, jesteś tylko trywialnym skryptem powłoki od zmiany SSI na ESI.
źródło
Lakier jest przeznaczony do tego, więc będziesz mieć więcej opcji z Varnish do zarządzania pamięcią podręczną niż z Nginx (nawet jeśli Nginx ma wiele wbudowanych opcji).
Ponieważ Nginx zawsze odpowiada moim potrzebom (prosta pamięć podręczna fragmentów, proxy, dobra prędkość ...) Jeszcze nigdy nie próbuję lakieru!
źródło