Necesito incluir contenido dinámico en páginas estáticas a nivel de servidor web. Las 2 opciones que he encontrado hasta ahora son Server Side Include (SSI)
y Edge Side Include (ESI)
.
Si bien los orígenes de SSI
parecen viejos y oscuros (esa página en caché de 95 de la Universidad de Illinois parece ser la referencia , aparentemente es del NCSA httpd
servidor web que solía alimentar aproximadamente el 95% de la red ), la de ESI
parece más reciente y alegre ( w3 especificaciones de 2001, escritas principalmente por chicos de Akamai ).
Además, sigo escuchando sobre Varnish
+ESI
y me pregunto si ese debería ser el camino a seguir. Sin embargo, ya tengo una configuración establecida nginx
, que solo es compatible SSI
, y me gustaría seguir el KISS
principio y evitar usarla Varnish
si es posible.
Para mi caso de uso inmediato, que incluirá una barra de usuario dinámica en la parte superior de cada página, creo SSI
que hará el trabajo. Sin embargo, me preocupa que a medida que mi sitio web crezca, necesitaré características solo compatibles ESI
que me obliguen a rediseñar todo, lo que me lleva a mi pregunta (finalmente el lector dice):
¿Cuáles son las características principales que no son compatibles con SSI
eso que te harían elegir ESI
(y viceversa)?
Respuestas:
Las etiquetas para SSI y ESI son tan similares que no me preocuparía demasiado por esto. Varnish solo admite el uso más básico de ESI de todos modos.
Use SSI y nginx ya que los tiene, y si alguna vez necesita el almacenamiento en caché de Varnish, solo está a un script de shell trivial para cambiar sus SSI a ESI.
fuente
Varnish está diseñado para eso, por lo que tendrá más opciones con Varnish para administrar la memoria caché que con Nginx (incluso si Nginx tiene muchas opciones integradas).
Dado que Nginx siempre se ajusta a mis necesidades (caché de fragmentos simple, proxy, buena velocidad ...) ¡Nunca pruebo Varnish todavía!
fuente