0 0

pragma与cache-control的区别? 3

一个请求的报头中,同时有:
pragma:no-cache
cache-control:no-cache

请问他们有什麽区别?为什麽要搞两个?

另外,html代码的meta中的pragma跟http报头中的pragma有何区别?
2010年12月29日 23:31

2个答案 按时间排序 按投票排序

0 0

Cache-Control: no-cache:这个很容易让人产生误解,使人误以为是响应不被缓存。实际上Cache-Control: no-cache是会被缓存的,只不过每次在向客户端(浏览器)提供响应数据时,缓存都要向服务器评估缓存响应的有效性。

Pragma: no-cache:跟Cache-Control: no-cache相同,Pragma: no-cache兼容http 1.0 ,Cache-Control: no-cache是http 1.1提供的。因此,Pragma: no-cache可以应用到http 1.0 和http 1.1,而Cache-Control: no-cache只能应用于http 1.1.

2010年12月30日 11:17
0 0

cache-control 是超高速缓存
pragma是编译控制

在请求消息或响应消息中设置Cache-Control并不会修改另一个消息处理过程中的缓存处理过程pragma就是为了让编译器编译出的C或C++程序与机器硬件和操作系统保持完全兼容而定义的宏扩展,#pragma是和特定编译器相关的。

2010年12月29日 23:54

相关推荐

    http头部cache-control字段解析

    `Cache-Control`头字段是在HTTP/1.1中引入的,用于替代或扩展早期HTTP版本中的`Pragma`头。它的设计目标是增强缓存机制的可控性,允许开发者精确地指定资源的缓存策略,从而优化网络性能,减少不必要的网络请求。 ...

    Cache-control使用Cache-control:private学习笔记

    4. **Expires头与Pragma:no-cache** - `Expires`头用于设定资源的过期时间,如果设置为一个过去的日期,浏览器会认为资源已过期,每次访问都会请求服务器。如果设置为未来的日期,浏览器将在该日期前使用缓存。 ...

    页面的缓存与不缓存设置及html页面中meta的作用

    HTTP1.0使用`Pragma`字段,而在HTTP1.1中,`Cache-Control`字段成为了更强大的控制工具。以下是一些关键的HTTP头字段: 1. **Pragma**: 在HTTP1.0中,`Pragma:no-cache`用于指示浏览器不应缓存页面,但这个指令对...

    response.setHeader问题

    response.setHeader 问题详解 ...本文将详细解释 response.setHeader 的作用、HTTP 消息报头的分类、 Cache-Control 和 ...通过设置 Cache-Control、Pragma 和 Expires 报头,可以禁用浏览器的缓存,提高页面的响应速度。

    sinatra-cache-control

    常见的`Cache-Control`指令包括`public`、`private`、`no-cache`、`max-age`等。例如,`public`指示响应可被任何中间缓存存储,`max-age`则指定了缓存的有效期。 在Sinatra中,我们可以通过设置响应头来添加`Cache-...

    request的使用.txt

    单纯的使用 xmlhttp.setRequestHeader("Cache-Control","no-cache")无效。 Cache-Control头域 Cache-Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置Cache-Control并不会修改另一个消息处理...

    us-17-Gil-Web-Cache-Deception-Attack-wp.pdf

    在正常的Web交互中,服务器根据HTTP请求头(如Cache-Control、Pragma等)决定是否缓存内容。在缓存欺骗攻击中,攻击者通过精心构造请求,诱使服务器将恶意内容存入缓存。 3. **Web缓存欺骗方法**: 攻击者首先将...

    Microsoft Edge Insider 安装包提取,可离线安装

    Pragma: no-cache User-Agent: Microsoft Edge Update/1.3.107.15;winhttp X-Old-UID: age=7; cnt=1 X-Last-HR: 0x0 X-Last-HTTP-Status-Code: 0 X-Retry-Count: 0 X-HTTP-Attempts: 1 Host: msedge.f.tlu.dl....

    HTTP+JS+浏览器缓存技术

    1. 使用 Meta 方法:<META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> <META HTTP-EQUIV="expires" CONTENT="0"> 2. 使用 jQuery Ajax 清除...

    HTTP协议的头信息详解.pdf

    通用头域包含请求和响应消息都支持的头域,包括 Cache-Control、Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via 等。 * Cache-Control 头域:指定请求和响应遵循的缓存机制。 Cache-Control 头域可以...

    如何防止IE缓存jsp文件.doc

    例如,有些旧版的IE浏览器可能不支持`Cache-Control`头,因此建议同时设置`Pragma`和`Cache-Control`,以提高兼容性。 3. **安全性考虑**: - 禁止缓存可以有效防止敏感信息被意外泄露,特别是在公共计算机上使用...

    Http基础.doc

    - **Pragma头域**:包含实现特定的指令,其中最常用的是`Pragma: no-cache`,其在HTTP/1.1协议中的含义与`Cache-Control: no-cache`相同。 #### 请求消息详解 请求消息由请求行、请求头、实体主体三部分组成。请求...

    PHP禁止缓存如何禁止页面缓存

    - **解析**:虽然HTTP/1.1协议已经引入了`Cache-Control`头,但为了向后兼容HTTP/1.0协议的浏览器,仍然推荐使用`Pragma`头。 #### 三、综合示例 下面是一个完整的PHP脚本示例,用于禁止页面缓存: ```php <?php...

    初探浏览器缓存实现原理-提高性能

    这通常通过设置HTTP头`Pragma: no-cache`和`Cache-Control: no-cache`来实现。 2. 未过期的:在设定时间内,浏览器可以使用缓存副本,只有在用户刷新或页面过期时才向服务器请求。这涉及到`Cache-Control: max-age`...

    如何防止IE缓存jsp文件

    response.setHeader(Cache-Control,no-cache); response.setDateHeader(Expires, 0); %> 2, 使用HTML标记,如下面: <HEAD> <META HTTP-EQUIV=Pragma CONTENT=no-cache> <META ...

    PHP MJPEG(php mjpg) [PHP 即時影像監控 模擬 / PHP 動態提片切換]

    header("Pragma: no-cache"); header("Content-type: multipart/x-mixed-replace; boundary=$boundary"); // Set this so PHP doesn't timeout during a long stream set_time_limit(0); while(true) { for...

    ASP.NET在响应中禁止缓存

    2. `Pragma`: HTTP/1.0标准的`Pragma: no-cache`字段,与`Cache-Control: no-cache`相似,用于向不支持`Cache-Control`的老版本浏览器发出指令。 ```csharp Response.AppendHeader("Pragma", "no-cache"); ``` ...

    JSP清除缓存.txt

    其`no-cache`值的作用类似于`Cache-Control`中的`no-cache`。 示例代码: ```java response.setHeader("Pragma", "no-cache"); ``` ##### 3. `Expires` 头部 `Expires` 头部用于指定响应过期的时间。如果设置为一...

    fastify-disablecache:固定插件以禁用客户端缓存

    Pragma: no-cache Expires: 0 您可以在阅读有关上这些响应标头的更多信息。 创建此插件的原因是,需要一种简便的方法来禁用客户端缓存,这些客户端缓存是从后端API接收的数据。 这样可以确保患者数据在被应用程序...

Global site tag (gtag.js) - Google Analytics