想象以下场景:
- 客户端(浏览器)调用 PHP 脚本
- 脚本在 web_root/downloads/tmp/test.zip 中生成一个 ZIP 文件
- 脚本相应地返回标头,因此启动该 ZIP 文件的下载
- 脚本终止目录 web_root/downloads/tmp/
会发生什么?
- 服务器排队删除并尽快删除文件夹
- 目录(和文件)被删除,客户端因此失去连接
- 服务器拒绝删除,因为目录以某种方式被锁定
- Apache 在流式传输文件之前实际上会克隆/缓存文件,因此删除原始文件将无效
哪一个是正确的?
现在,我可以在自己的服务器上测试这种行为,但我想知道在这种情况下是否存在任何定义基于 UNIX/LINUX 的标准行为的约定?
此类案件一般如何处理?