Apache Httpd 在包含 Tomcat 内容的 Drupal 页面上缓存不当

Apache Httpd 在包含 Tomcat 内容的 Drupal 页面上缓存不当

我有一个在 Httpd 上运行的 Drupal 网站,该网站发出 AJAX 调用来获取 HTML 片段,这些片段由在不同虚拟主机上运行的 Tomcat 6 中的 JSP 提供。两个服务器之间的集成是通过 Jkmod 实现的。

当 Java 后端中的数据发生变化时,JSP 提供的 HTML 也会发生变化以反映新数据。不幸的是,更改通常需要一个多小时才能反映在 Drupal 网站上。这不是本地浏览器缓存的问题,因为我们从不同的机器查看了该网站,结果相同,并且还使用 Firebug 禁用了浏览器缓存。

具体场景:

昨晚 Tomcat 应用程序关闭了,导致进行 AJAX 调用的 Drupal 页面显示错误。再次启动 Tomcat 应用程序时,服务器关闭时用户未访问的页面会使用 Tomcat 的正确 HTML 显示。已访问的页面仍显示错误。直接访问相同的 JSP(即不通过 Httpd)没有问题。最终的解决方案是对 Drupal 页面进行不可见的更改,之后错误消失,JSP 内容显示正确。同样,通常这需要一两个小时才能在不更改页面的情况下自行纠正。

我不太了解 Httpd 或 Drupal,所以我不确定这个奇怪的缓存应该在哪里配置。运行 Httpd 2.2、Drupal 6.17 和 Tomcat 6.0.29

答案1

Drupal 具有内置的缓存功能。登录到您的站点 drupal 管理门户。通常是 domain.com/user,然后导航到站点配置/缓存排除,从这里您可以排除某些页面的缓存。

相关内容