我已经制作了一个运行于http://127.0.0.1/。
当我在 Firefox 中打开它并单击如下链接时:
<a href="file:///C:/Users/John%20Doe/Documents/test/log.txt">test</>
什么都没发生。为什么它无法打开 file:/// URL,无论是在 Firefox 中还是使用我的操作系统指定的(或 Firefox 指定的).txt 处理程序应用程序?当我使用 RSS 客户端而不是浏览器时,它曾经工作正常(它打开了 Notepad++ 并转到正确的文件)。
为什么 Firefox 什么都不做?它甚至没有在 Firefox 的“控制台”中转储任何类型的错误消息,而每当出现此类问题时通常都会发生这种情况。
不,没什么。它只是不关心 URL。
尽管没有任何错误,我怀疑这与没有在http://-served网页或其他内容。如果是这样,是否有一些不错的“元标记”或其他内容我可以用来指示 Firefox,是的,我希望允许此特定页面打开 file:/// URL?
答案1
厚颜无耻地窃取我的答案在 StackOverflow 上:
Mozilla/Firefox 有意禁用通过 HTTP(S) 检索的页面上的本地文件链接,因为它们可能存在安全风险,并且过去曾在攻击中使用过。
但是,您可以覆盖此行为。
简洁版本:
您需要配置 Firefox'安全策略允许链接到本地文件。这可以使用配置文件policies.json
(所有平台)或使用 Windows 组策略(仅适用于 MS Window)来实现。
在这两种情况下,要更改的设置是LocalFileLinks
- 它包含允许链接到本地文件的域列表。
例子policies.json
:
{
"policies": {
"LocalFileLinks": ["http://example.org/",
"http://example.edu/"]
}
}
有关详细信息,请参阅本文在 MozillaZine 中,以及如何从 Firefox 中的网页访问本地文件系统关于 Mozilla 支持。