1

我使用 nginx 作为反向代理,通过外部提供程序上传文件存储。当我处理文件上传时,我需要在向用户返回响应之前跟踪(在我的数据库中)上传是否成功。因此,我想使用ngx.location.capturelua-nginx-module 中提供的方法与我的后端讨论请求的结果。由于我需要等待上游服务器的响应,我只能在header_filter_by_lua. 不幸的是,我无法在 中发出任何向外的通信header_filter_by_luangx.location.capturengx.socket.*并且ngx.exec仅在响应尚未到达时可用。

我如何对 nginx 中的上游响应做出反应?

我想过的其他方法:

  • 让脚本监视访问日志,然后发出 curl 请求。(似乎应该有一个更简单的方法)
  • 最初通过 content_by_lua 中的 ngx.location.capture 发送文件(我认为这不会处理高达 5 GB 的文件大小)

帮助表示赞赏:)

4

1 回答 1

0

用于/upload定位: content_by_lua_fileresty.upload 模块

于 2016-01-25T17:28:39.570 回答