如何让 nginx 在空文件上返回 404?

如何让 nginx 在空文件上返回 404?

我想看看是否可以根据文件大小进行条件重写。例如:

if (!-s $request_filename) {
    return 404;
}

我假设如果文件存在且非空,-s 将返回 true。我需要这个,因为我有一个动态创建文件的脚本,并且这些文件不应该在我完成写入之前提供。因此,如果文件为空,它们应该为 404。

答案1

我会通过让脚本写入临时文件来避免这个问题,并且在写入完成后,将文件重命名为最终文件名。

相关内容