我有一个运行Ubutu 10.04和Apache2和PHP的Web服务器.
当我通过PHP将文件上传到服务器时,它使用'rwxr-xr-x'和'www-data www-data'作为用户和组创建它.
我已将"管理员"帐户添加到"www-data"组.
但是,当我通过SSH登录我的服务器并尝试删除其中一个创建的文件时,它会显示"Permission Denied"?即使我对它应用'0777'权限,我仍然无法删除该文件.
我发现允许我删除文件的唯一方法是将文件转到"管理员"帐户.显然我不想为每个上传的文件执行此操作,或者确实CHMOD每个文件都为'0777'.
我在这里做错了不会让我创建一个文件,然后使用另一个帐户删除它?
删除文件的能力不受文件权限的控制,而是受包含目录的权限控制.
父目录的权限和所有者/组是什么?这些是您需要的权限.
查看注释中列出的权限,您需要为组www-data添加组写权限(尽管此处需要考虑安全注意事项)或将自己添加到sudoers文件以允许您的帐户执行命令www-data用户
编辑
创建目录的权限将受当前umask设置的影响.您可以更改umask以允许创建具有任意权限的文件,如下所示: -
$old = umask(0);
mkdir(date("Y", time()), 0775)
umask($old);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4434 次 |
| 最近记录: |