在 Firefox 下载中禁用“打开方式”选项(强制 Firefox 始终保存所有文件)

Tha*_*Guy 16 firefox mime-types download

症状

  • 用户打开他们的网络邮件帐户,单击某个附件,然后单击“用 Word 打开”。
  • 用户编辑他们宝贵的文档数小时。用户保存word doc并退出。
  • 用户找不到文件。
  • 用户拿起手电筒和干草叉(最后一步可选)

在此处输入图片说明

问题的原因

Firefox 的下载对话框显示两个选项:“保存文件”和“打开方式”。

在此处输入图片说明

通过选择“打开方式”,Firefox 会将文件下载到临时文件夹并打开关联的应用程序。我想阻止这种行为

我试过的

我做了功课并搜索了MozillaZine和知识库(如此此处此处),如果我理解正确,下载对话框将不取决于文件的扩展名,而是取决于其 MIME 类型。

我知道我可以通过转到“首选项”>“应用程序”来设置行为,如下所示:

在此处输入图片说明

然而:

  • Firefox 依赖于服务器通知的 mime 类型。但它本身可能不正确、省略或冗余(一种文件类型可以有多种 mime 类型,反之亦然)。
  • Firefox 会记住每个 mimetype 的“从现在开始自动为此类文件执行此操作”复选框。如果我想强制执行某种行为,我必须为每种 mime 类型手动设置它。
  • 我无法在应用程序列表中创建新条目。仅当从未注册的 mime 类型进行新下载时才会填充它。只有这样我才能改变列表中的行为。
  • 我可以编辑mimetypes.rdf文件,强制执行“保存文件”行为,但我找不到对所有文件强制执行此操作的方法。

我需要的是一种方法(最好)使其无法使用外部应用程序打开,或者至少强制保存文件。

我知道我可以设置browser.altClickSaveabout:config将它保存文件,当我点击按下ALT键,但我需要一些解决方案,不需要用户交互。

小智 5

制作您部署给用户的主 mimeTypes.rdf 文件是最好的解决方案

在处理 XML 样式文档的编辑器(例如 Notepad++)中打开 mimeTypes.rdf

查找并用第二行替换第一行:

NC:saveToDisk="false"
NC:saveToDisk="true"
  and
NC:alwaysAsk="true"
NC:alwaysAsk="false"  
Run Code Online (Sandbox Code Playgroud)

我还会用您的用户积累的一些外来特性“播种”您的主 mimeTypes.rdf:

  1. 从使用网络邮件附件最多的 2-3 个用户复制 mimeTypes.rdf
  2. 将用户的类型与您的主人进行比较:

命令行工具

find "<RDF:li RDF:resource=" Master_mimeTypes.rdf > MasterMimes.txt   #generate list of mimetypes
find "<RDF:li RDF:resource=" User1_mimeTypes.rdf > User1Mimes.txt     #generate list of mimetypes
fc MasterMimes.txt User1Mimes.txt                                     #compare lists of mimetypes
Run Code Online (Sandbox Code Playgroud)

如果您发现任何新类型,请从用户文件中获取整个节并添加到 master。

  • 不幸的是,这根本不实用。我不知道我将来会下载什么类型。此外,某些文件类型(如 exe)根本不起作用。 (3认同)