0

我正在开发一个应用程序,该应用程序利用 PDFLib 为我的用户提供总结其帐户的动态 PDF 文件,并且需要确保这些页面没有被缓存(传递了一些敏感数据,出于安全原因,我不能将其存储在缓存中)。

我尝试使用以下代码:

Header("Expires:-1");
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");

首先,我没有可靠的方法来测试 IE7 是否不缓存页面,所以我的第一个问题是“我如何测试以确保我的无缓存标头正常工作?”

其次,在我将这些行添加到我的代码后,PDF 停止在 IE7 中显示。当我删除线条时,它工作正常。有人对如何避免这种行为有任何想法吗?

提前致谢!

编辑:第一个问题已经回答;我应该单独问他们。我的第二个问题是“如何避免 IE7 在发送无缓存标头时不呈现我的 PDFLib 页面的行为?” 仍然活跃。

4

2 回答 2

1

要检查页面是否被缓存,请更改并刷新。请注意,Expires标头应包含日期,因此 的值-1无效。尝试使用过去的日期。

于 2012-07-24T13:50:00.427 回答
0

我实际上找到了 IE 7 的调试栏 http://www.debugbar.com/download.php,它显示了所有的标题和缓存信息。我使用 HTTP(S) 选项卡,选择我的文档并查看下面的“信息和缓存”。一旦我掌握了窍门,真的很容易。

于 2012-07-25T13:02:13.493 回答