我在IE7中显示pdf有些麻烦(由R& OS'ezpdf生成)。
使用Acrobat Reader 8.1.2的IE7。说“页面无法显示”
其他浏览器(如FF3 / Acrobat 8.1.2。或IE6 / Acrobat 7)对文件没有任何问题。
服务器返回以下标头:
日期:2009年1月8日星期四,格林威治标准时间10:52:40 服务器:Apache / 2.2.8(Win32)mod_ssl / 2.2.8 OpenSSL / 0.9.8g PHP / 5.2.5 DAV / 2
X-Powered-By:PHP / 5.2.5
到期日:1981年11月19日星期四08:52:00格林尼治标准时间 缓存控制:无存储,无缓存,必须重新验证,后检查= 0,预检查= 0 Pragma:no-cache
内容长度:4750
保持活跃:超时= 5,最大= 100
连接:保持活力
内容类型:application / pdf
有人知道如何解决这个问题吗?
答案 0 :(得分:3)
缓存控制:无存储,无缓存,必须重新验证,后检查= 0,预检查= 0 Pragma:no-cache
...因此IE不会将文件存储在Temporary Internet Files文件夹中。但是,用于从IE浏览器直接“打开”文件的机制通常需要从Temporary Internet Files内部打开。直接从浏览器打开文件通常是不可靠的,尤其是在IE中; “另存为”效果更好。
考虑使用替代方法替换cachebusting标头,例如向URL添加“?randomstring”参数。还要考虑添加“Content-Disposition:attachment; filename = ...”标题,这将阻止插件尝试并且无法在浏览器UI中显示该文件。
答案 1 :(得分:0)
我想我已经解决了这个问题。
问题是服务器端的不,而是客户端。 生成的PDF将显示在弹出窗口(javascript:window.open)中,IE7会在其上发出窒息。
当我在弹出窗口中打开一个重定向到PDF的html文件时,它可以工作。