DetailPage-MSS-KB

知识库

文章编号: 260519 - 最后修改: 2006年12月25日 - 修订: 3.4

 

概要

在使用来自 Web 服务器的文档时,您可能希望立即提示用户将文件直接保存在用户磁盘上,而不要在浏览器中打开该文件。不过,对于已知的 MIME(多用途 Internet 邮件扩展)类型,如 Microsoft Word ("application/ms-word"),默认行为是在 Internet Explorer 中打开文档。

您可以使用 Content-disposition 头来覆盖此默认行为。其格式是:
Content-disposition: attachment; filename=fname.ext
				

更多信息

Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。Content-disposition 的有效值范围在征求意见文档 (RFC) 1806 中讨论(参见本文的“参考”一节)。本文重点讨论“附件”问题,指示用户代理(在本文中,指 Internet Explorer)将文件保存到磁盘,不在内联保存它。

当 Internet Explorer 接收到头时,它会激活文件下载对话框,它的文件名框自动填充了头中指定的文件名。(请注意,这是设计导致的;无法使用此功能将文档保存到用户的计算机上,而不向用户询问保存位置。)

有两种使用 Internet Explorer 来为文件指定 Content-disposition 头的方法:动态和静态。

要动态应用头,请创建一个将文档写出到浏览器的 Active Server Pages (ASP) 文件。使用 Response.AddHeader 方法来添加 Content-disposition 头。例如:
Response.AddHeader "content-disposition","attachment; filename=fname.ext"
				
下面的 Microsoft 知识库文章提供了有关如何为非文本文档执行二进制编写的说明:
193998  (http://support.microsoft.com/kb/193998/ ) 如何在 ASP 中读取和显示二进制数据
如果您要保护服务器上的文档存储区,尤其是 Web 根外部的文档存储区,则此方法是最佳的。

要静态应用头,请在 Internet Service Manager 中右键单击文档,然后选择属性。选择 HTTP 头选项卡,然后在这里输入 Content-disposition 头。如果您只希望对系统上的一些文件应用 Content-disposition 且不要求使用 ASP,则此方法是最佳的。

请注意,此解决方案不适用于 Internet Explorer 4.01,会产生错误。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
182315  (http://support.microsoft.com/kb/182315/ ) FIX:Content-Disposition:不强制出现“文件下载”对话框

参考

有关 Content-disposition 的更多信息,请参见以下 Internet 工程任务组 (IETF) 网站上的征求意见文档 (RFC) 1806:
http://www.ietf.org/rfc/rfc1806.txt (http://www.ietf.org/rfc/rfc1806.txt)
有关为 Microsoft Internet Explorer 开发基于 Web 的解决方案的更多信息,请访问下面的 Microsoft 网站:
http://msdn.microsoft.com/library/default.asp?url=/workshop/entry.asp (http://msdn.microsoft.com/library/default.asp?url=/workshop/entry.asp)

http://msdn2.microsoft.com/en-us/ie/default.aspx (http://msdn2.microsoft.com/en-us/ie/default.aspx)

http://support.microsoft.com/iep (http://support.microsoft.com/iep)

这篇文章中的信息适用于:
  • Microsoft Internet Explorer 5.0
  • Microsoft Internet Explorer 5.01
  • Microsoft Internet Explorer 5.5
关键字: 
kbhowto kbnavigation KB260519
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。
过时的知识库文章不再更新的 KB 内容免责声明
本文介绍那些 Microsoft 不再提供支持的产品。因此本文按“原样”提供,并且不再更新。
其他支持选项
Microsoft Community 支持论坛
直接联系我们
查找 Microsoft 认证合作伙伴
Microsoft 商店