Nginx:读取临时caching文件

我使用ngx_http_proxy_moduleproxy_ignore_client_abortcaching文件。 所以当客户端closures连接时,nginx会继续将文件从后端复制到当前服务器。

但是当另一个用户试图获得这个文件(这个文件仍然在复制)时,nginx会去后端去获取文件的新副本,并且也会尝试caching它。

我可以使用proxy_cache_lock来阻止它。 但这是个坏主意,因为文件可能非常大,文件将被caching的时候会花费很多时间。

我怎么能告诉nginx读这个临时文件,而不是等到文件被caching?

您正在寻找提供caching的陈旧的对象 。 这可以在发生错误,超时到后台或更新时完成。

 proxy_cache_use_stale updating error timeout;