"If-Modified-Since:"导致管理端首页加载变慢

Liangstar 2018-05-27 01:30:19
用Fiddler对HTTP请求的报文进行了跟踪。以下是同一台客户端机器,分别用IE8和chrome打开页面时的Debugger情况。
看到IE8加载静态资源时候,带"If-Modified-Since:"头,导致首页加载卡死。chrome加载静态资源时候,不带"If-Modified-Since:"头,加载正常。
生产环境本次上线做了管理端F5负载均衡改造,并且增加了网络节点。
IE8浏览器版本号为IE8.0.7601.24000

时好时坏,后来经过调查,发现以下是IE8可以重现的步骤,坏的情况发送出去的静态资源就带有"If-Modified-Since:"头。
1.修改IE8设置:常规->设置->Internet临时文件TAB->检查存储的页面的较新版本,选择“从不”, IE8加载管理端(本地有缓存),加载首页成功。
2.修改IE8设置:常规->设置->Internet临时文件TAB->检查存储的页面的较新版本,选择“自动”, IE8加载管理端(本地有缓存),加载停滞,用监控查看加载停止在某个静态资源(js,css)处。

问题,我怎样可以在不改变IE8默认配置的情况下(检查存储的页面的较新版本,选择“自动”),让发出去的静态资源请求不带有"If-Modified-Since:"头,或者让服务器返回响应时服务器不告诉浏览器静态资源的Last-Modified信息
...全文
1154 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Liangstar 2018-05-30
  • 打赏
  • 举报
回复
引用 4 楼 zssazrael 的回复:
用哪个服务器?静态内容和动态内容是放在一起还是分开的? If-Modified-Since 是非常成熟的技术,基本上很难出问题。 从描述上看,可能是 F5 分发有问题。 检查一下 F5 配的规则,是按会话分发到具体节点,还是随机分发,还是按 IP分发。
用weblogic中间件,静态内容和动态内容放在一起(比如我在首页.jsp中引用了公共头部.jsp;公共头部.jsp里面引用了大量的css,js) F5的规则是好像是cookie保持。明天我再确认下。
幽饮烛 2018-05-28
  • 打赏
  • 举报
回复
用哪个服务器?静态内容和动态内容是放在一起还是分开的? If-Modified-Since 是非常成熟的技术,基本上很难出问题。 从描述上看,可能是 F5 分发有问题。 检查一下 F5 配的规则,是按会话分发到具体节点,还是随机分发,还是按 IP分发。
  • 打赏
  • 举报
回复
引用 楼主 Liangstar 的回复:
问题,我怎样可以在不改变IE8默认配置的情况下(检查存储的页面的较新版本,选择“自动”),让发出去的静态资源请求不带有"If-Modified-Since:"头,或者让服务器返回响应时服务器不告诉浏览器静态资源的Last-Modified信息
能收到 If-Modified-Since,说明这个页面 url 之前的请求时,你的服务器端响应的内容中有 Tag 头部标志输出给浏览器。总之都是你的服务器端程序设计概念啦。
  • 打赏
  • 举报
回复
你的服务器端处理这些请求时,使用什么机制开发的呢?如何处理 If-Modified-Since 的呢? 看上去,你的服务器端“懂”If-Modified-Since,如果不懂它其实也就不会出现什么问题了(当然也就不会为前端支持高速缓存功能了),反而是响应了这个请求才出问题的。
Liangstar 2018-05-27
  • 打赏
  • 举报
回复
前端使用easy UI,jquery-1.8.3.min.js

61,110

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧