我建立一个应用程序,需要使用网络服务器像一个文件系统。具体地说,理想的解决方案将是:

  • 一个服务器的端组件,所允许的,可以通过HTTP,开(锁定)、阅读、写作、寻求和截断一个文件。我需要能够锁的多个文件的同时进行。我需要这个运行上的任何标准的网主机那里,所以它必须在上面运行的IIS或Apache,使用服务器的端脚本(网络服务,PHP等)
  • 一个客户界面,我一方面,它URI,它打开了和行为就像一个文件。我的客户应用程序。净,所以最理想的客户API会实现一个FileSteam子类。

我需要这个是我有相当大的文件,这将是坐在一个网主机。我需要宣读部分的文件(利用寻求),截断,并且追加的结束。下载和传整个文件过于宽大。此外,我要锁的多个文件的同时进行。

我的问题:

  • 做这样的事情存在吗?
  • 如果不是,为什么不呢?不这似乎不是一个非常有用的服务?

这似乎是这样的一个部分将允许我使用的任何网络托管公司那里作为一个网络文件服务器。这似乎是有用的,不是吗?

谢谢你的帮助!

Eric

有帮助吗?

解决方案

看来你寻找的是一个 WebDAV 服务器。

其他提示

长版本
网主机的最初设计,以内容发送到用户在个人连接。整个概念的会议是一个相对现代的现象(关键词:相对)-其中大多数是简单的方法来跟踪单独从相同的用户。更多的往往不是,它只是给予 印象 你仍然连接到服务器,当时在现实中你已连接下载,断开和做同样的连接/download/拔你每次采取行动。

事情就像WebDav,都粘上增加的标准HTTP对话,允许专门设计的软件有更复杂的通信通过HTTP到一个服务器。很常见的使用对于WebDav是颠复、iCal(日历的支持),等等-这些允许 单一的连接 上载数据。

你在谈论什么是有一个会议基础文件系统服务。虽然它看来,这将是一个良好的服务,我怀疑它并没有被实施,由于纯粹的复杂性和危险大于益处。例如,不仅将这种服务的必担心标准文件系统的问题(授权,授权文件的权限、锁定超时,等等),但现在还担心复杂的网页(认证、会议的跟踪,切断,重的攻击,DDoS攻击,等等)。例如,会发生什么,如果一客户锁一文件,然后下降离线?并将文件留锁,直到服务器重新启动?如果没有,你什么时候会自动锁的文件?会发生什么情况如果自动解触发原来的储物柜回来上网吗?你部队的一切工作要做,在一个单一的连接,以补偿?会发生什么,如果他们得到断开中间的一个会议?

他们但一些东西,你不必担心。我漫步在更长的时间比我的意思,但是底线是...

简短的版本
你当然可以使用WebDav来实现这一点,这将需要建立一个服务器-侧图书馆。然而,虽然它不是不可能的,你是在一个世界的伤害。我建议简化设计,这样你不需要它的行为就像一个文件系统中的那么多。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top