Tengo un sistema que ejecuta nginx / php-fpm / varnish / wordpress y amazon s3.
Ahora he visto muchos archivos de configuración mientras configuraba el sistema, y en todos encontré algo como esto:
/* If the request is for pictures, javascript, css, etc */
if (req.url ~ "\.(jpg|jpeg|png|gif|css|js)$") {
/* Remove the cookie and make the request static */
unset req.http.cookie;
return (lookup);
}
No entiendo por qué se hace esto. La mayoría de los ejemplos también ejecutan NginX como servidor web. Ahora la pregunta es, ¿por qué usaría el caché de barniz para almacenar en caché estos archivos estáticos?
Para mí tiene mucho más sentido almacenar en caché solo los archivos dinámicos para que php-fpm / mysql no se vea afectado demasiado.
¿Estoy en lo cierto o me falta algo aquí?
ACTUALIZAR
Quiero agregar información a la pregunta basada en la respuesta dada.
Si tiene un sitio web dinámico, donde el contenido realmente cambia mucho, chatear no tiene sentido. Pero si usa WordPress para un sitio web estático, por ejemplo, esto puede almacenarse en caché durante largos períodos de tiempo.
Dicho esto, lo más importante para mí es el concepto estático . He encontrado un enlace con algunas pruebas y puntos de referencia en diferentes aplicaciones de caché y aplicaciones de servidor web.
http://nbonvin.wordpress.com/2011/03/14/apache-vs-nginx-vs-varnish-vs-gwan/
NginX es realmente más rápido en obtener su contenido estático, por lo que tiene más sentido simplemente dejarlo pasar. NginX funciona muy bien con archivos estáticos.
-
Aparte de eso, la mayoría de las veces el contenido estático ni siquiera está en el servidor web. La mayoría de las veces este contenido se almacena en un CDN en algún lugar, tal vez AWS S3, algo así. Creo que el caché de barniz es el último lugar donde desea tener su contenido estático almacenado.