2011-05-05 85 views
2

我支持网站Intranet上的客户端“打开文件基础上的内容,而不是文件扩展名”。该网站包含指向xml文件的链接。这些XML文件具有唯一的扩展名,并打算由特定应用程序打开。使用IE 8,我们可以通过在Internet选项 - >安全 - >自定义级别设置选项'基于内容打开文件,而不是文件扩展名'来支持这一点。在IE 9中,该选项已被删除。现在这些文件打开一个新标签并显示xml。在IE 9

理想情况下,我想该文件只是通过下载管理器下载,但在客户端计算机上的应用程序打开文件是可以接受的为好。在IE 9中这样做的最好方法是什么?有没有我应该调整的设置?服务器端,我试着调整MIME类型,但似乎如果我把它发送到未知的东西(例如application/octet-stream)IE确定的内容。我能想到的最后一个选项是调整链接,以便它们调用一个将xml内容加载到响应对象中的asp.net页面,但将标题更改为包含Content-Disposition:"attachment;filename=file.ext”

上解决这个问题的最好方法有什么建议?

回答

4

Content-Disposition:attachment是你在找什么,是的。这就是您如何指示浏览器单独下载文件,而不是尝试显示它。

你可以使用路由或重写,让您的文件URL,但有一个ASHX处理的文件,以便它可以设置标题。 (不使用ASPX,它比你更需要的只是设置一些头)

2

我觉得周围的工作,我一直在寻找的是,“基于内容打开文件,而不是文件扩展名”选项事实在IE8中重新命名为'启用MIME嗅探'。但安德鲁·巴伯的回答是正确的解决方案。

+0

这是正确的。 – EricLaw 2011-05-12 01:08:49