Ste*_*all 26 tomcat web-server cache
如何防止tomcat缓存?我有通过 ajax 加载和使用的 css 和基本 html 文件,除非我重新启动 tomcat,否则这些更改似乎没有反映。不同的机器,不同的浏览器,我没有收到更新的文件。
想法?
Ada*_*and 21
更改 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>
Run Code Online (Sandbox Code Playgroud)
naX*_*aXa 16
对于 Tomcat 8 / Tomcat 9 属性应添加到 conf/context.xml 中,如下所示
<Context>
<Resources antiResourceLocking="false" cachingAllowed="false" />
...
</Context>
Run Code Online (Sandbox Code Playgroud)
更改cachingAllowed标志后,您可能必须删除 /work/Catalina/localhost 中的应用程序缓存文件夹。还要清除IntelliJ IDEA的缓存(如果你用它来运行Tomcat):
Mac:/Users/{:user}/Library/Caches/IntelliJIdea{:version}/tomcat/
Linux:/home/{:user}/.IntelliJIdea{:version}/system/tomcat/
Windows:C:\Users\{:user}\.IntelliJIdea{:version}\system\tomcat\
有关其他参数,请参阅Apache Tomcat 9 配置参考。
Ret*_*ner 13
我在 Tomcat 7 中遇到了这个问题,原因是我将 antiResourceLocking 设置为 true(这听起来是个好主意......)。
根据文档(http://tomcat.apache.org/tomcat-7.0-doc/config/context.html):
请注意,将此设置为 true 会产生一些副作用,包括在正在运行的服务器中禁用 JSP 重新加载:请参阅 Bugzilla 37668。
就我而言,它甚至导致缓存纯静态文本文件。
所以,总而言之,至少为了快速开发,我不得不使用:
antiResourceLocking="false"
cachingAllowed="false"
Run Code Online (Sandbox Code Playgroud)