gpt4 book ai didi

http - 防止 Tomcat 中的 304 NOT MODIFIED 响应

转载 作者:可可西里 更新时间:2023-11-01 16:22:56 32 4
gpt4 key购买 nike

如果资源(index.html)已经缓存在客户端中,例如使用响应头:

"Cache-Control": "max-age=0, must-revalidate, proxy-revalidate"

如何防止 tomcat 在对服务器的下一个 请求中以304 Not Modified 响应?无论如何,我想强制服务器以 200 而不是 304 响应。我试着设置

httpResp.setHeader("Cache-Control", "no-cache, no-store, must-revalidate, proxy-revalidate");
httpResp.setHeader("Pragma", "no-cache");
httpResp.setHeader("Expires", "0");

但它只适用于第二个请求。第一个请求仍然得到 304。我尝试使用 HttpServletRequestWrapper 覆盖 if-modified-since header ,其中包含过去的值,例如 Mon, 06 Dec 2010 01:34:46 GMT 没有运气——尽管文件在 2015 年被修改,但客户端仍然收到 304 响应。有什么办法可以防止 304 响应?也许通过 tomcat 配置?

最佳答案

不确定这是否有帮助,但您可以尝试以下操作 -

  1. 删除浏览器缓存从头开始测试是否可行

  2. 改编自另一个 ServerFault 问题 -

https://serverfault.com/questions/40205/how-do-i-disable-tomcat-caching-im-having-weird-static-file-problems?answertab=votes#tab-top

更改 cachingAllowed 标志后,您可能必须删除/work/Catalina/localhost 中的应用程序缓存文件夹。配置可以在server.xml中引入为

    <Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="false"
charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true"
reloadable="false"
wrapperClass="org.apache.catalina.core.StandardWrapper">
</Context>

关于http - 防止 Tomcat 中的 304 NOT MODIFIED 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34431614/

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