2014-08-29 124 views
1

我正在使用PHP来允许用户上传文件。该文件正在上传,但该文件的权限不正确。我设置了该文件夹的权限,并选中了适用于文件夹中所有子项的框。PHP上传的文件具有不正确的权限

这只有在我对新上传的文件进行一次更改后才有效。如果我不更改权限,它会得到这个默认设置,这会打破我的应用程序的其余部分。例如,C:\uploads\设置为允许组“Everyone”中的用户读取和写入。但是,这不适用于新上传的文件,除非我对该特定文件的权限执行了某些操作(将任何用户或组添加或删除其权限 - 此更改将被文件夹的权限覆盖)。

这是IIS6(我相信)Windows Server 2003上

回答

0

务必:

chmod()

在文件上传后

+1

'C:\ uploads \'意味着一个windows fs。没有chmod – Oberst 2014-08-29 18:16:45

1

的Windows上传文件到临时目录,然后将它具有临时目录权限。如果你给这个文件夹上的用户提供了很好的权限(upload_tmp_dir),那么这将是没有问题的。 您也可以使用windows系统命令: CACLS或ICACLS

+0

太棒了!我不会在一百万年内猜到这一点。就我而言,用户正在将图像文件上传到使用PHP的MediaWiki。该文件的结果权限不包括其他用户能够看到新上载的文件所需的Windows安全组。 Daimos建议,我将该安全组添加到“%SystemRoot%\ Temp”目录并解决了该问题。 – 2015-04-16 18:32:28