我有一个链接到PDF文件的网页( target="_blank" )。 如果我点击链接,PDF阅读器只是在Firefox浏览器中显示灰色的屏幕。
如果我复制该链接并在新选项卡中手动打开它,则PDF将正确显示,并且通过单击原始链接进行的后续请求现在可以正常工作,这表明在将文件加载到caching中时发生问题。
似乎Adobe PDF阅读器插件正在提出字节范围的请求(我看到大量的206个响应),我怀疑这可能是问题的原因。
我正在运行一个Apache Web服务器。 有没有人有Apache和Adobe的字节范围请求的问题? 有没有解决办法? 也许一种configurationApache忽略PDF上的字节范围请求的方法?
在httpd邮件列表中询问并回答了如何禁用请求的问题:
如何禁用接受范围?
接受字节范围请求的原始服务器可以发送
Accept-Ranges: bytes Servers that do not accept any kind of range request for a resource MAY send Accept-Ranges: none如果你没有find一个更直接的方式,你总是可以使用mod_headers删除或更改响应头。
– >请参阅mod_headers的apache文档以了解如何将Accept-Ranges标头设置为none
http://mail-archives.apache.org/mod_mbox/httpd-users/200912.mbox/%[email protected]%3E
你有坐在中间的鱿鱼吗? 这是Adobe插件的常见问题 – 它试图抓取PDF(TOC)的结尾,Squid开始下载整个文件,Adobe超时并呈现一个空白页面。
教你自己“右键单击,另存为” – PDF不是一个Web文档,不应该在浏览器中查看。
查看PDF时,此问题有时会在Acrobat Reader中产生错误109。
通过htaccess文件禁用字节范围请求:
# Disable Byte-range for PDF files <Files *.pdf> Header set Accept-Ranges none </Files>