如何用PHP创建一个多用户文件服务器系统?

时间:2012-04-06 03:21:36

标签: php permissions

我只是在这里看一个大局观;我可以在提供指南后进行谷歌细节。

我想制作一个相对简单的文件托管网站,例如Dropbox或skydrive,主要是出于教学原因。

使用PHP和MySQL建立多用户登录和注册系统非常简单,但我如何管理每个用户的文件目录和权限?

2 个答案:

答案 0 :(得分:1)

可能有数百种方法可以做到这一点,但这就是我要做的事情:

  • 他们永远不应该有直接下载路径,因为它可能被滥用。
  • 所有文件都可以存储在同一个地方。
  • 应将文件名更改为唯一ID以避免重复。
  • 将文件名,唯一ID和用户ID存储在数据库中。
  • 当他们访问唯一ID的页面时,您可以进行检查并显示文件信息。
  • 然后您将文件传递给他们,而不是让他们直接下载。
  • 他们的用户页面会显示文件名和指向这些页面的链接等。

我希望这是一个很好的跳跃点。

答案 1 :(得分:1)

最简单的方法是:将文件存储在您想要的任何层次结构中的某个位置,而这些位置不仅可以通过Web服务器公开访问。存储有关数据库中每个文件的元信息。在所述数据库中,存储文件所有者是谁。编写一个脚本,允许人们下载这些文件(参见readfile),要求用户登录,并且只有文件的所有者才能使用。