我必须通过HTML链接打开文件。 该文件的位置位于另一台计算机上,并由IP地址(通过自定义服务器工具)进行处理 EG:
<a href="http://localhost:PORT/FILE.dotx" download>Download</a>
这适用于firefox和chrome,但IE(版本8)将文件解释为xml-File并尝试直接打开它。
无法升级或更改客户端的浏览器。
是否可以在不使用PHP,VB或Rails的情况下强制IE下载文件? (因为我们没有apache服务器或类似的东西)
答案 0 :(得分:1)
lighttpd.conf示例,需要mod_setenv:
$HTTP["url"] =~ "\.pdf\?dl$" {
setenv.add-response-header = ( "Content-Disposition" => "attachment")
}
这是唯一可靠的方式。 IE不会信任MIME类型,因为旧的Apache缺陷解决方法是Apache发送了错误的MIME类型,并且Microsoft&#34; 修复了它&#34;。
虽然所有pdf文件都可以简单地给出下载标题,但我选择显示更简洁的方式 - 只有参数?dl
激活此行为。普通的pdf仍将显示在浏览器中,只有附加?dl
的链接才能获得特殊处理。
我实际上是在我的服务器上使用这种技术,但它是在php中实现的,因为我无法单独使用静态处理程序。由于我通过这个提供图像,我还添加Cache: no-transform
标题以防止Opera Turbo重新压缩要下载的文件。
编辑:修正了处理词 - 必须大写,以便在基于Webkit的浏览器中工作。