文件夹权限 Apache

文件夹权限 Apache

我有一个网站,需要存储用户登录后上传的文件。目前我有一个打开了权限的文件夹 (777),因为这是让 mkdir() 工作的唯一方法。当用户上传文件时,应用程序会根据用户创建多个目录,然后最终在此目录中存储文件。

几个问题:

  1. 如何设置每个文件夹和子文件夹的权限,以便只有登录到我的网站的用户才能访问它们?这可能吗?

  2. 有没有更安全的方法来存储 .pdf、word 文档和文本文件?

答案1

您需要阻止人们通过网络直接访问该文件夹。您有两个选择:

  1. 将上传文件夹移至 DOCUMENT_ROOT 之外,以使其无法通过网络访问。
  2. 创建一个 .htaccess 文件来阻止对该文件夹的访问或重定向到检查访问权限的 PHP 脚本。

使用上述选项之一后,您将需要加载一个 PHP 脚本来检查访问权限并向每个用户提供文件。我建议使用类似“...myphpscript.php/path/to/file”的 URL 和 $_REQUEST["PATHINFO"] 变量来简化操作。

答案2

可以对子文件夹授予递归权限

chmod 777 -R folder

相关内容