我有一个脚本允许将文件分配给产品。为避免名称文件重复出现问题,每个产品都有一个特定的目录。PHP - Apache无法写入刚刚创建的目录
包含所有产品特定目录的uplad directoy看起来像这样。
4 drwxrwx - x 3 pepe pepe 4096 Jan 9 17:08。
20 drwxrwxr-×35佩佩佩佩20480 01月09日15时42 ..
4 drwxrwxr-×2阿帕奇阿帕奇4096 1月9日17时08分001
Apache下用户 “阿帕奇” 和 “Apache” 运行设置作为“pepe”组的一部分。
如果我尝试将文件上载到没有创建目录的产品,则脚本将创建目录(具有为dir“001”显示的权限),然后尝试上载文件但失败。
如果我在SSH中将目录所有者更改为pepe.pepe,然后重新上传该文件,它将完美无缺。
为什么apache创建一个在下一行代码中无法写入的目录?
如何避免必须手动将所有权更改为所创建的目录,因为当将文件分配给他的所有产品时,我的客户显然无法做到这一点。
确定Apache是做写作?你的脚本文件使用什么语言?... – War10ck 2015-01-09 20:38:17
尝试mkdir('path/to/dir',0700)该模式似乎对我最有效。哦,并确保创建目录的脚本是由apache拥有:apache而不是pepe:pepe – rwhite35 2015-01-09 20:44:17
@ war10ck脚本在PHP – 2015-01-09 21:02:23