如何让IE以外的浏览器接受文件URL?

如何让IE以外的浏览器接受文件URL?,url,browser,cross-browser,Url,Browser,Cross Browser,我们的intranet web应用程序从共享网络文件服务器链接到出版物、文档或其他资源的情况并不少见 在过去,我们在形成以下链接方面没有遇到什么困难: file://fileserver1/folderofgoodies/rules.pdf \\fileserver1\folderofgoodies\rules.pdf 我们没有遇到问题的原因是,大楼里的每个人都使用IE6或IE7(很少有人使用IE8)。这两种类型的URL在Microsoft浏览器中似乎都运行良好 但是如果你尝试在其他浏览器,特

我们的intranet web应用程序从共享网络文件服务器链接到出版物、文档或其他资源的情况并不少见

在过去,我们在形成以下链接方面没有遇到什么困难:

file://fileserver1/folderofgoodies/rules.pdf
\\fileserver1\folderofgoodies\rules.pdf
我们没有遇到问题的原因是,大楼里的每个人都使用IE6或IE7(很少有人使用IE8)。这两种类型的URL在Microsoft浏览器中似乎都运行良好

但是如果你尝试在其他浏览器,特别是Firefox中点击这些链接,什么都不会发生

在我正在开发的一个新的intranet web应用程序上,我一直在尝试确保跨浏览器支持,但至少在Firefox 3.5.3中,任何指向本地计算机或本地网络资源的链接似乎都被忽略了,尽管我承认我还没有检查过其他浏览器

我有没有办法改变链接到上述文件的方式,以便像Firefox这样的浏览器能够接受它们?我不能做任何需要在每个用户/每台计算机的基础上安装脚本、软件、扩展或任何其他解决方案的事情


我意识到抑制上述链接是一个安全问题,但这些链接将仅来自受信任的本地intranet位置,因此…

我认为您唯一的选择是重新配置Firefox,但不幸的是,您说您不能这样做。

您可以将文件服务器路径作为虚拟目录映射到您的intranet站点并通过http链接

Mozilla应用程序阻止指向本地文件的链接。唯一的方法是在Firefox上安装插件。这描述了其中的一些。

如果这是intranet,您可以构建一个小助手服务器/page/webservice/您将链接并传递文件名作为参数的任何内容:

http://server/getlocalfile?path=file://fileserver1/folderofgoodies/rules.pdf

顺便说一句,您将从扩展的安全性中获益。

事实上,我们的目标是让事情“正常工作”,而不是让用户承担重新配置设置或以其他方式更改其计算机/浏览器的责任(因为他们中的许多人甚至不是远程计算机高手)。这会从大多数浏览器启动下载提示,还是调用默认处理程序?例如,我更喜欢在AdobeReader插件的选项卡中打开PDF。。。或者至少在桌面客户端Adobe Reader中打开。。。我想,如果浏览器提供“打开或保存”功能,并且他们可以单击“打开”按钮,这是可以接受的。。。嗯。如果你告诉浏览器这样做,它会的。例如,请参见。基本上,您可以设置内容类型和文件名。还可以查看是否需要特定的mime类型,以便Adobe plugin将其识别为PDF。此外,为了更简单的解决方案,虽然您确实可以更好地检测文件类型,但不必使用很少的硬编码文件类型。您可以提供一个示例吗?这是否意味着要与IIS或类似的软件打交道?或者这是我在应用程序级别可以做的事情?如果有帮助,这是一个ASP.NET web应用程序。