通过internet共享文件-WebDAV/SMB/FTP

通过internet共享文件-WebDAV/SMB/FTP,ftp,webdav,smb,cifs,Ftp,Webdav,Smb,Cifs,我们正在开发一个基于web的应用程序,它提供用户案例文件的存储库。希望用户能够从具有完全读写功能的web浏览器访问这些 对于我们的早期系统,它托管在本地Linux服务器和Windows客户端上,我们能够共享一个文件夹,并通过\\server\share\u name\file.doc类型链接访问它。如果这些类型的链接包含在网页中(在internet explorer中),并单击在MS Word中打开的文件,并可直接保存到共享文件夹中。然而,这些类型的链接只在IE中工作-而不是FF或Chrome

我们正在开发一个基于web的应用程序,它提供用户案例文件的存储库。希望用户能够从具有完全读写功能的web浏览器访问这些

对于我们的早期系统,它托管在本地Linux服务器和Windows客户端上,我们能够共享一个文件夹,并通过\\server\share\u name\file.doc类型链接访问它。如果这些类型的链接包含在网页中(在internet explorer中),并单击在MS Word中打开的文件,并可直接保存到共享文件夹中。然而,这些类型的链接只在IE中工作-而不是FF或Chrome

现在在我们的下一代系统中使用基于互联网的解决方案,我们需要类似的功能

我们正在考虑让WebDAV(或FTP/SFTP)共享,并将每个客户机上的本地驱动器映射到它,以提供类似的功能。不过,这可能无法与FF或带有\\server\share\u name的Chrome配合使用。。。键入链接。我们已经做了简短的测试,一旦文件打开,file://链接就不提供写功能

作为最后手段,我们将能够使用手动文件上传对话框,但这并不理想,需要额外的最终用户培训


在这一领域有任何类似的经验和任何可能的解决方案/最佳做法。

当您将远程资源映射为本地驱动器时,对于浏览器,这将成为本地驱动器。浏览器只能有限地访问本地文件系统。现在,当您提供指向浏览器的链接时,浏览器的默认行为是下载链接后面的资源,然后让本地应用程序处理它。浏览器只是不知道如何以不同的方式在本地打开远程资源

解决方案是让浏览器下载一些东西(某种链接文件),让一些本地助手模块(外部应用程序或浏览器插件)打开该链接文件,并在本地打开该链接文件中指定的位置。由于这将是一个客户端助手模块,它将能够与客户端系统交互,并知道如何打开提供的链接。由于每个系统上的虚拟驱动器号可能不同(如果将磁盘装入驱动器号),帮助器模块需要解析指向正确本地驱动器的链接。如果您创建一个隐藏的虚拟驱动器(我们的虚拟存储产品允许您这样做),则链接将类似“\SomeFancyNameUniqueToYourApp\Path\To\File.ext”,无需解析。大多数应用程序都能很好地处理这种类型的路径


我不确定,但浏览器可能会在不需要帮助器模块的情况下打开Windows.lnk文件,使用隐藏的虚拟驱动器,您可以在服务器上生成lnk文件,并让浏览器在本地打开它。但这只是一个猜测。我打赌你无论如何都需要一个助手模块

试试SMEStorage.com。它们使您能够映射本地WebDav和FTP服务器,并使用Linux、Mac或Windows上的云驱动器以及移动设备(iOS、Android、BlackBerry和WindowsPhone7)访问文件。您可以为每个文件获取唯一的文件链接,还可以在链接过期时确保文件共享的安全。

类型链接应该可以工作,MS应用程序在处理这些链接方面也越来越好。但仍然不是100%

欢迎使用SO。您可以通过编辑来更新自己的问题。你可以为问题投票(向上投票或向下投票),如果你得到的答案满足你的需要并回答了你的问题,你可以将其标记为答案