.htaccess - 强制 IE 下载未打开的文件

标签 .htaccess internet-explorer tomcat

我们有一个简单的 html 页面,其中包含 Tomcat 服务器上的链接列表。许多链接只是一个简单的.msg 文件,供用户下载、填写和发送。在 Chrome 中运行良好,但在 IE 中运行不佳。 IE 尝试加载 .msg 文件,您看到的只是“garbally gook”。

我曾尝试寻找答案,但到目前为止都没有成功。

试过: - 添加“下载”到标签,当然这在 IE 中不受支持。 - 尝试添加 .htaccess 文件:AddType application/octet-stream .msg,但这也不起作用。

Tomcat 由 Apache 开发,所以我真的很惊讶 .htaccess 文件的答案不起作用。一些答案建议使用 PHP 或调整配置文件,但这有点让我头疼。谁会想到这样一个看似简单的问题会如此技术性地解决!

非常感谢您提供的任何方向建议!

最佳答案

我终于找到了我的答案,所以对于下一个没有技巧的人,希望这对你也有帮助!

对于 Apache Tomcat,找到您的 web.xml 并在记事本中打开。搜索 MIME,继续搜索直到找到您的 MIME 类型,它们将类似于下面的代码。它们按字母顺序排序,因此请相应地放置新的 MIME 类型。对我来说,这是一个 .msg 文件,我希望 IE 提示打开/另存为,而不是仅仅尝试打开它。

<mime-mapping>
<extension>msg</extension>
<mime-type>application/vnd.ms-outlook</mime-type>
</mime-mapping>

为了找到合适的 MIME 类型,我刚刚在 Google 上搜索“Outlook .msg MIME 类型”,很快就找到了。添加新的 MIME 类型后,保存并重新启动服务器。

问题:web.xml 不允许我们保存它。我们通过使用不同的名称保存新文件、重命名/删除现有的 web.xml 文件然后将更新后的文件重命名回 web.xml 来解决这个问题。

问题:重新启动服务器后,IE 仍然尝试读取 .msg 文件而不是打开它,即使在刷新缓存后,grrrr!尝试另一个我们以前没有尝试过的链接,发现新的 MIME 类型正在工作,并且在另一台计算机上进行测试证实了这一点。

祝你好运!

关于.htaccess - 强制 IE 下载未打开的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30224691/

相关文章:

.htaccess - 仅针对特定网址使用 htaccess 重定向

linux - 防止从 Node.js 应用程序直接访问 Url

eclipse - 使用 Eclipse 和 Tomcat 6 的 Servlet 出现 404 错误

java - 如何使用 Java 在 Tomcat 中以编程方式找出打开 session 的数量?

spring - HibernatePersistence javax.naming.NameNotFoundException 抛出数据源

html - 链接到安全脚本外部的最佳方法(使用 SSL)

apache - .htaccess 模板

css - 垂直堆叠的 div 之间有空间 (firefox)

应用于 IE 内容的 CSS3 Box-Shadow

internet-explorer - 使用 Safari 和 Internet Explorer 中的 WebViewLink 为经过身份验证的用户显示来自 Google Drive 的图像时出错