¿Existe alguna evidencia de uso incorrecto del encabezado de HTTP Pragma en las respuestas tiene algún efecto (exclusivo)?

14

He estado investigando el encabezado de Pragma, ya que ya existen otros dos encabezados de respuesta HTTP que quitan el caché (Cache-Control & Expires), y me interesaba saber qué navegadores usan (d) el antiguo HTTP 1.0.

Resulta que la spec solo define el comportamiento de Pragma ( no-cache ) para HTTP 1.0 solicitudes , no respuestas.

Las únicas menciones específicas del navegador que puedo encontrar son para IE4 , que parece requerir 32 KB de contenido antes de reconocerlo como un elemento <meta> , lo que significa que como encabezado nunca funcionó incluso cuando el navegador era relevante, y Netscape 4 que aparentemente tampoco funcionó .

algunos sitios grandes lo usan , pero parece que se inició como un" por si acaso ", nunca fue compatible, y se perpetuó como una superstición.

¿Alguien ha observado un cambio en el comportamiento reproducible (y deseable) al usar el encabezado HTTP de Pragma en una respuesta, diferente de la funcionalidad de Cache-Control o Expires?

    
pregunta brianary 19.04.2015 - 23:36
fuente

1 respuesta

4

Pragma está en desuso en favor de Cache-Control, pero debido a su uso indebido común como encabezado de respuesta, hay clientes y proxies que lo interpretarán como tal.

Versiones de calamar anteriores son un ejemplo y, a partir de la versión 3.2, Squid está publicitando e intentando admitir totalmente las especificaciones HTTP / 1.1, lo que significa que pragma en una respuesta del servidor no tiene ningún significado y se ignorará.

De acuerdo con Microsoft KB234067 , Internet Explorer 4.01 y 6.0 permiten Pragma: no caché de forma segura Respuesta HTTP y una etiqueta meta Pragma: no-cache a través de una respuesta insegura. Otros navegadores como Firefox parecen tener un soporte irregular de la misma.

Nota RFC2616 estados:

  

Las directivas de caché son unidireccionales, ya que la presencia de una directiva en una solicitud no implica que la misma directiva deba darse en la respuesta.

     

Tenga en cuenta que las memorias caché HTTP / 1.0 podrían no implementar Cache-Control y         solo puede implementar Pragma: no-cache (ver sección 14.32).

    
respondido por el phiz 22.04.2015 - 11:08
fuente

Lea otras preguntas en las etiquetas