为什么 Firefox 无法运行本地 .swf 文件?

为什么 Firefox 无法运行本地 .swf 文件?

我的目标是尝试通过 Firefox 而不是独立播放器运行 .swf 文件。

尝试在 Firefox 29.0(当前为 14.04)上运行本地 .swf 文件时,即使浏览器安装了 Flash 插件,浏览器也会打开“打开方式/保存文件”提示窗口。右键单击文件并单击“打开方式...”> Firefox 只会让浏览器打开一个新选项卡,然后再次提示“打开方式/保存文件”。通过该提示窗口选择 Firefox 仍然只会让 Firefox 在新选项卡上再次打开提示。

但是,当在线访问 .swf 文件时,它们运行正常,并且 Firefox 甚至在地址栏中显示看起来像乐高的插件指示器,表明我在访问 .swf 的地址上启用了“Adobe Flash”。

在 Firefox 的偏好设置“应用程序”选项卡中,SWF 文件当前设置为“使用 Shockwave Flash(在 Firefox 中)”,所以我不明白为什么它对本地文件的情况不起作用。

更新: 显然,Firefox 在其“首选项”的“应用程序”选项卡中为不同的 mime 类型提供了单独的“Shockwave Flash 文件”条目。我找到了一种解决方法,并在下面输入。

答案1

找到了解决方法这里基于 Arch 线程这里据我所知,这只是 Firefox 无法正确支持某种 mime 类型的问题。

以 root身份编辑/usr/share/mime/packages/freedesktop.org.xml并替换以下内容:

<mime-type type="application/vnd.adobe.flash.movie">

和:

<mime-type type="application/x-shockwave-flash">

然后运行:

sudo update-mime-database /usr/share/mime

本地 .swf 文件现在可以正常工作。

答案2

另一个选择是在主目录中创建~/.mime.types以下内容:

application/x-shockwave-flash       swf swfl

这样,它就不会在系统升级时被覆盖。

如果您愿意,可以复制、粘贴并运行此命令来执行以下操作:

echo 'application/x-shockwave-flash       swf swfl' >> .mime.types

不需要进一步的命令,甚至不需要重新启动浏览器。

相关内容