我将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_dirCGImod_php
请帮忙!?