有没有办法将Windows 共享文件夹的工作链接合并到 HTML 页面中?例如链接到\\server\folder\path
?
为简单起见,假设该页面将在 Windows 机器上打开(server
当然,在该页面所在的同一 Intranet 上。)
我已经尝试了一些file://
计划技巧,但它们似乎都不起作用。
有没有办法将Windows 共享文件夹的工作链接合并到 HTML 页面中?例如链接到\\server\folder\path
?
为简单起见,假设该页面将在 Windows 机器上打开(server
当然,在该页面所在的同一 Intranet 上。)
我已经尝试了一些file://
计划技巧,但它们似乎都不起作用。
我认为有两个问题:
解释:
我检查了我的一个,我有模式:
<a href="file://///server01\fshare\dir1\dir2\dir3">useful link </a>
file:
请注意,我们在协议 ( )后面加上了 5 个斜线
Firefox 将尝试阻止跨站点脚本。我的解决方案是修改配置文件目录中的prefs.js。您将添加两行:
user_pref("capability.policy.localfilelinks.checkloaduri.enabled", "allAccess");
user_pref("capability.policy.localfilelinks.sites", "http://mysite.company.org");
文件协议 URI 是这样的
文件://[主机]/[路径]
这就是为什么您经常看到这样的文件 URL(3 个斜杠)file:///c:\path...
所以如果主机是server01,你想要
文件://server01/文件夹/路径....
这是根据关于 file:// 协议的维基百科页面,并使用 .NET 的 Uri.IsWellFormedUriString 方法进行检查。
如果您被允许更进一步,那么 javascript/html 设施 - 我将使用 apache Web 服务器通过 http 表示您的目录列表。
如果这个解决方案是合适的。这些是步骤:
从其中一个镜像http://httpd.apache.org/download.cgi下载 apache hhtp 服务器
将其解压缩/安装(如果是 msi)到目录,例如 C:\opt\Apache(该指令适用于 Windows)
将网络文件夹映射为 Windows 上的本地驱动器(\server\folder 比方说驱动器 H:)
打开 conf/httpd.conf 文件
确保下一行存在且未注释
LoadModule autoindex_module 模块/mod_autoindex.so
添加目录配置
<Directory "H:/path">
Options +Indexes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
7. 启动 web 服务器并确保远程文件夹的目录列表可通过 http 访问。点击 localhost/path 8. 在你的网页中使用一个框架来访问列表
遗漏: 1. 您可能需要更多花哨的主机名配置,请参阅 Apache Web Server 文档。在 DNS 服务器中注册主机名
这取决于您要如何合并它。场景 1. 点击链接 2. 弹出资源管理器窗口
<a href="\\server\folder\path" target="_blank">click</a>
如果需要花哨的 UI - 那么它几乎不会作为解决方案。