Internet explorer 为什么我得到304当-“;每次我访问该页面时;什么节目?

Internet explorer 为什么我得到304当-“;每次我访问该页面时;什么节目?,internet-explorer,http-headers,browser-cache,fiddler,http-status-code-304,Internet Explorer,Http Headers,Browser Cache,Fiddler,Http Status Code 304,我们有一个(旧的)内部网站点具有此设置 每次我访问页面时:true 但我仍然可以在开发者工具中看到许多304回复: 问题: 为什么呢?我如何强制将所有响应视为200 相关信息: IIS 7.5 它发生在IE9-10(该网站仅在IE上运行)(浏览器模式更改为IE9,因为它是一个旧网站(intranet),未根据新浏览器进行调整 使用fiddler-它还显示304 请求头示例: http 304代码是服务器代码,所以您的浏览器及其设置实际上并不相互关联,304代码意味着浏览器在修改后发

我们有一个(旧的)内部网站点具有此设置

每次我访问页面时
:true

但我仍然可以在开发者工具中看到许多
304
回复:

问题

  • 为什么呢?我如何强制将所有响应视为
    200
相关信息:

IIS 7.5

它发生在
IE9-10
(该网站仅在IE上运行)(浏览器模式更改为IE9,因为它是一个旧网站(intranet),未根据新浏览器进行调整

使用fiddler-它还显示304

请求头示例:


http 304代码是服务器代码,所以您的浏览器及其设置实际上并不相互关联,304代码意味着浏览器在修改后发送,服务器检查此日期并返回“未修改”

http 304代码是服务器代码,所以您的浏览器及其设置实际上并不相互关联,304代码意味着浏览器在修改后发送,服务器检查此日期并返回“未修改”

每次访问网页时,都会检查存储页面的更新版本

简单地说,IE将('check',因此)在请求中包含与缓存相关的头(
,如果自
以来进行了修改,
ETag
等)。只有在感觉缓存“未命中”时,服务器才会返回
200

另外,请注意,只有当服务器无法使用
缓存控制
过期
响应标头指定缓存新鲜度生存期时,才会应用相关设置。有关详细信息,请参阅的条件请求部分

如果要将服务器配置为禁用整个目录的客户端缓存,请尝试以下操作:

<configuration>
  <location path="your_assets_dir">
    <system.webServer>
      <staticContent>
        <clientCache cacheControlMode="DisableCache" />
      </staticContent>
    </system.webServer>
  </location>
</configuration>

每次访问网页时,都会检查存储页面的更新版本

简单地说,IE将('check',因此)在请求中包含与缓存相关的头(
,如果自
以来进行了修改,
ETag
等)。只有在感觉缓存“未命中”时,服务器才会返回
200

另外,请注意,只有当服务器无法使用
缓存控制
过期
响应标头指定缓存新鲜度生存期时,才会应用相关设置。有关详细信息,请参阅的条件请求部分

如果要将服务器配置为禁用整个目录的客户端缓存,请尝试以下操作:

<configuration>
  <location path="your_assets_dir">
    <system.webServer>
      <staticContent>
        <clientCache cacheControlMode="DisableCache" />
      </staticContent>
    </system.webServer>
  </location>
</configuration>


为什么要这样做?当前的行为提供了更好的性能和与完全关闭缓存相同的正确性…@EricLaw我没有构建系统。如果“每次我访问页面”,有些ajax调用不起作用没有设置。你误解了。当我每次访问页面时,你都有
设置时,你会得到304s。那很好。别管304s——它们正在做它们应该做的事情。你为什么要这样做?当前的行为提供了更好的性能和与完全关闭缓存相同的正确性…@EricLaw我没有构建它e系统。如果没有设置“每次我访问页面”的话,有些ajax调用是不起作用的。你误解了。当我每次访问页面都设置了
时,你就得到了304s。那很好。别管304s——他们在做他们应该做的事情。