我有一个在 Linux 上运行的本地 LAMP 堆栈。我有通常的 Apache/PHP/mySQL 东西,从 localhost 一切正常。
我在服务器上有一个显示树视图的小应用程序。这列出了在本地(在服务器上)找到的一系列文档。这些文件可以通过在树中单击它们来查看,此时它们将加载到页面上的 DIV 中。这些文件可以使用我在应用程序中编写的简单编辑器进行编辑。到目前为止,这工作正常。
问题是 PHP(我假设)在加载这些文档时正在缓存它们,这意味着当用户编辑它们时,虽然它们被保存,但当它们在树中重新选择时,显示的是缓存的版本,而不是新的编辑版。
该应用程序的初始页面是一个标准的 HTML 页面,但我已将其重命名为 PHP,并将以下代码添加到此页面的顶部:
<?php
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
?>
不幸的是,虽然这似乎阻止了主页被缓存,但它并没有阻止那些在应用程序的一般使用期间动态加载的文件。
有什么方法可以阻止 PHP(仍然假设它是 PHP)缓存这些动态加载的本地文件?