¿Es posible de alguna manera forzar una respuesta de 200 (caché) en lugar de una 304 no modificada para archivos estáticos? De ser así, podría ahorrar una gran cantidad de solicitudes de servidor y acelerar el tiempo de carga de manera considerable para los visitantes que regresan.Nginx - "force" 200 respuesta de caché en lugar de 304
Respuesta
Establezca la directiva expires
en Nginx en las ubicaciones donde servidor sus archivos estáticos. Los navegadores no se molestarán en volver a consultar con el servidor hasta que se cumpla el tiempo de caducidad. En ese punto, el servidor aún puede enviar una respuesta 304 si el archivo estático no ha cambiado y el tiempo de caducidad deberá alcanzarse antes de que los navegadores vuelvan a verificar.
Por cierto, el código de respuesta 200 simplemente significa que se está devolviendo el recurso solicitado. No tiene nada que ver con si los encabezados de almacenamiento en caché se envían con la respuesta HTTP o no.
He encontrado Expires solo no establece correctamente el comportamiento. A continuación ha sido un éxito seguro:
# Set cache
expires 1M;
add_header Pragma public;
add_header Cache-Control "public";
Esto va en el bloque de ubicación deseada ..
También creo que hay una gran cantidad de información engañosa por ahí en este .. Eso 200 es de alguna manera el mismo que 200 (caché).
Desde mi entendimiento:
200 - solicitud del servidor - la transferencia OK 200 (caché) - OK - no hay petición del servidor (de caché) 304 - solicitud del servidor - no hay transferencia (no modificado)
200 (caché) como yo entiendo, NO hace una solicitud de servidor en absoluto.
200 no es una respuesta de caché; indica éxito y requiere que la respuesta contenga el resultado. 304 indica un recurso no modificado; es decir, ya lo tienes, por lo que no se devuelve nada. Entonces, lo que sugieres debe hacer que todos los 304 se hagan pasar por disfrazados como 200's para que fallen. Incluso si no va a guardar ninguna solicitud o acelerar nada con falsas 200 respuestas.
EDIT: 200 en algunos casos significa que el recurso ha sido tomado de la memoria caché con éxito ...
- 1. Cómo prevenir "304 no modificado" en nginx?
- 2. ¿Debo usar Varnish en lugar de nginx?
- 3. Cómo saber cuándo enviar una respuesta 304 No modificada
- 4. ASP.NET MVC en Cassini: ¿Cómo puedo forzar al directorio de "contenido" a devolver 304 en lugar de 200?
- 5. 304: Caché no modificado y front-end
- 6. ¿Por qué el uso de ASP.NET OutputCache sigue generando 200 OK, no 304 Not Modified?
- 7. El sitio web devuelve 302 en lugar de 200
- 8. javascript image on Error en caso de respuesta no 200
- 9. Python Flask + nginx fcgi - ¿salida de respuesta grande?
- 10. nginx - respuesta basada en el encabezado solicitado
- 11. ¿Qué significa el estado de respuesta HTTP "200 Filtrado"?
- 12. Manera correcta de manipular 304 no modificada en jQuery ajax
- 13. Error de respuesta CGI en el servidor nginx usando fcgiwrap
- 14. servicio web WCF: la respuesta es 200/ok, pero el cuerpo de respuesta está vacío
- 15. Max-edad y 304 Not Modified Procesamiento
- 16. nginx como proxy de caché no almacena nada en el caché
- 17. IE9 falsificaciones 304 después de recibir ETag
- 18. Caché de Nginx con orden de parámetro variable
- 19. Problemas para minimizar 304 solicitudes
- 20. Nginx restablecimiento de conexión, respuesta de uWsgi perdido
- 21. Estrategias de invalidación de caché de proxy inverso de Nginx
- 22. Encabezado futuro lejano y HTTP 304
- 23. OPCIONES Tratamiento de la petición en nginx
- 24. Lanzar HttpResponseException en el método de acción WebAPI que devuelve la respuesta 200 vacía
- 25. Jquery.get() no funciona en IE8/9. no se puede cargar páginas en caché 304 no modificado
- 26. Cabeceras de control de caché repetidas; válido o no? (Nginx)
- 27. Force re-cache de WSDL en php
- 28. Nginx ofrece SVG download en lugar de mostrarlo
- 29. Respuesta HTTP de caché en Spring MVC Servicio de reposo
- 30. ¿Cómo se puede eliminar Nginx del encabezado de respuesta http?
tengo expira establece en 2 semanas, pero las herramientas dev de Google Chrome sigue mostrando 304 peticiones en lugar de 200 códigos. ¿Está dando información falsa? – ustun