我想在XWiki页面上放置一个文件路径。
对于Windows文件共享,这可行:
[[For Windows>>unc://filehare/directory$/index.html]]
对于linux:
当我在Firefox中输入file:///mnt/directory/index.html
时,会显示index.html页面。
但是当我在XWiki中使用任何这些语法时,没有任何反应。
[[For Linux>>file:///mnt/directory/index.html]]
[[For Linux>>file:mnt/directory/index.html]]
[[For Linux>>file:/mnt/directory/index.html]]
[[For Linux>>unc:mnt/directory/index.html]]
[[For Linux>>unc:/mnt/directory/index.html]]
[[For Linux>>unc:///mnt/directory/index.html]]
谁能告诉我正确的语法是什么?
答案 0 :(得分:0)
首先,您需要清楚地了解UNC协议(以及使用它的链接)仅用于在本地网络中的其他计算机上寻址/引用文件。它们也可以链接到您自己的计算机(使用计算机的“名称”,但大多数时候它们指的是其他计算机)。关于UNC的更多细节:https://whatis.techtarget.com/definition/Universal-Naming-Convention-UNC
第二:目前尚不清楚“在Windows上”与“在Linux上”的含义。在第一种情况下,XWiki服务器是否在Windows上运行,在第二种情况下,它是在Linux上运行的不同XWiki服务器?我实际上认为你的意思是你试图从两台不同的计算机访问相同的XWiki服务器:首先你使用的是带有Windows操作系统的计算机(可能是在Internet Explorer / Edge上),在第二种情况下,你切换到另一台计算机那是用Firefox浏览器运行Linux发行版的。我会假设你处于后一种情况,因为它是最有意义的。请注意,UNC链接仅适用于在查看XWiki页面时使用 Windows计算机的人。
第三个:您的第一个示例unc://filehare/directory$/index.html
是对fileshare
计算机上的文件的引用(它位于网络上的某个位置,而不是您当前正在使用的当前计算机进行测试,参考在我的第一点中提到的UNC协议)。但是,您的第二个示例file:///mnt/directory/index.html
不起作用,是对本地计算机上的文件的引用,您正在测试的文件(“mnt”是一个文件夹,你的电脑)。在第二个示例中,由于安全问题,自几年前现代Web浏览器(包括Firefox,您正在测试的浏览器)以来,您的特定用例不再被允许。 Internet Explorer(作为旧浏览器)可能仍然默认工作,但您不应该再在2018年使用它了。欢迎在http://kb.mozillazine.org/Links_to_local_pages_don%27t_work
在XWiki中,以下任何链接都是等效的:
[[UNC file on the "server" computer>>unc:\\server\folder\file.ext]]
[[UNC file on the "server" computer>>url:file://///server/folder/file.ext]]
[[UNC file on the "server" computer>>file://///server/folder/file.ext]]
...然而,实际上并不是与XWiki相关的东西,而是与当前浏览器解释这些链接的能力有关。默认情况下,如上所述,不再支持或仅禁用此功能。某些浏览器可能仍然支持通过某些高级设置或安装浏览器插件来禁用此保护:
...但您必须进行此更改并在阅读该页面时要在所有计算机上安装此类附加组件,这不太实用。