我将PHP作为FCGI运行!我将upload_tmp_dir
option 设置为 value /home/domain.com/tmp
。执行phpinfo()
复查时,确认上述设置正确。
然而,当实际上传发生时,上传文件会暂时进入/tmp
具有权限的目录apache:apache
,当上传完全完成时,上传的文件才会被移动到目标目录,该目录设置在upload_tmp_dir
. 文件移动后,它具有适当的权限,即domainowner:domainowner
.
FCGI
如上所述发生的事情是绝对错误的,并且与正在做的事情mod_php
或 CGI
正在做的事情不同!mod_php
并 CGI
开始直接将文件上传到upload_tmp_dir
,然后在上传完成后重命名文件。
我对此几乎没有什么担忧,如下所示:
想象一下,如果 20 个人同时完成上传大约 2GB 的文件会怎样?上传的文件必须从 移动到主目录/tmp
,给文件系统造成很多无用的负载!因此,我认为移动比重命名同一目录中的文件更有资源?!除了/tmp
挂载为ext3
和 home as ext4
,更糟糕的是/tmp
分区是 16GB 的空间,这与我上面想象的完全是灾难?
问题:
如何以与or相同的方式强制FCGI
使用指令?我还没有找到记录的方法来更改它使用的临时目录。upload_tmp_dir
CGI
mod_php
请帮忙!?