gpt4 book ai didi

firefox - 说服 Firefox 通过 HTTPS 发送 If-Modified-Since header

转载 作者:行者123 更新时间:2023-12-03 22:22:53 29 4
gpt4 key购买 nike

如何说服 Firefox(3.0.1,如果重要)在 HTTPS 请求中发送 If-Modified-Since header ?如果请求使用纯 HTTP 并且我的服务器尽职尽责地尊重它,它会发送 header 。但是当我使用 HTTPS 从同一服务器请求相同的资源时(即,只需将 URL 中的 http://更改为 https://),那么 Firefox 根本不会发送 If-Modified-Since header 。这种行为是 SSL 规范规定的还是什么?

以下是一些示例 HTTP 和 HTTPS 请求/响应对,使用 Live HTTP Headers Firefox 扩展提取,其中一些差异以粗体显示:

HTTP 请求/响应:

http://myserver.com:30000/scripts/site.js

获取/scripts/site.js HTTP/1.1
主机:myserver.com:30000
用户代理:Mozilla/5.0 (...) Gecko/2008070206 Firefox/3.0.1
接受:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
接受语言:en-us,en;q=0.5
接受编码:gzip,deflate
接受字符集:ISO-8859-1,utf-8;q=0.7,*;q=0.7
保活:300
连接:保持事件
If-Modified-Since: 2008 年 8 月 19 日星期二 15:57:30 GMT
如果-无匹配:“a0501d1-300a-454d22526ae80”-gzip
缓存控制:max-age=0

HTTP/1.x 304 未修改
日期:格林威治标准时间 2008 年 8 月 19 日星期二 15:59:23
服务器:Apache/2.2.8 (Unix) mod_ssl/2.2.8 OpenSSL/0.9.8
连接:保持事件
保活:超时=5,最大值=99
Etag:“a0501d1-300a-454d22526ae80”-gzip

HTTPS 请求/响应:

https://myserver.com:30001/scripts/site.js

获取/scripts/site.js HTTP/1.1
主机:myserver.com:30001
用户代理:Mozilla/5.0 (...) Gecko/2008070206 Firefox/3.0.1
接受:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
接受语言:en-us,en;q=0.5
接受编码:gzip,deflate
接受字符集:ISO-8859-1,utf-8;q=0.7,*;q=0.7
保活:300
连接:保持事件

HTTP/1.x 200 正常
日期:格林威治标准时间 2008 年 8 月 19 日星期二 16:00:14
服务器:Apache/2.2.8 (Unix) mod_ssl/2.2.8 OpenSSL/0.9.8
最后修改时间:2008 年 8 月 19 日星期二 15:57:30 GMT
Etag:“a0501d1-300a-454d22526ae80”-gzip
接受范围:字节
内容编码:gzip
内容长度:3766
保活:超时=5,最大值=100
连接:保持事件
内容类型:文本/javascript

更新:设置 browser.cache.disk_cache_ssl to true 成功了(这很奇怪,因为正如 Nickolay 指出的那样,内存缓存仍然存在)。在响应中添加“缓存控制:公共(public)” header 也有效。谢谢!

最佳答案

HTTPS requests are not cached so sending an If-Modified-Since doesn't make any sense. The not caching is a security precaution.



不缓存 磁盘上 是一种安全预防措施,但似乎确实会影响 If-Modified-Since 行为(浏览代码)。

尝试设置 Firefox 首选项(在 about:config 中) browser.cache.disk_cache_ssl 真实 .如果有帮助,请尝试发送 缓存控制:公共(public)您的回复中的标题。

更新: Firefox 行为 was changed对于 Gecko 2.0 (Firefox 4) -- HTTPS 内容现在被缓存。

关于firefox - 说服 Firefox 通过 HTTPS 发送 If-Modified-Since header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16483/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com