Nginx 中 proxy_send_timeout 指令有什么作用?

推荐答案

proxy_send_timeout 指令用于设置 Nginx 向代理服务器发送请求的超时时间。如果在指定的时间内 Nginx 无法将请求发送到代理服务器,Nginx 将关闭连接并返回错误。

本题详细解读

作用

proxy_send_timeout 指令定义了 Nginx 向代理服务器发送请求的超时时间。这个时间是从 Nginx 开始发送请求到代理服务器接收完整个请求的时间。如果在指定的时间内代理服务器没有接收完请求,Nginx 将关闭连接并返回错误。

语法

  • time:超时时间,单位为秒。默认值为 60 秒。

示例

在这个示例中,Nginx 向 backend 代理服务器发送请求的超时时间被设置为 30 秒。如果在 30 秒内代理服务器没有接收完请求,Nginx 将关闭连接并返回错误。

注意事项

  • proxy_send_timeout 仅适用于发送请求的阶段,不包括等待代理服务器响应的阶段。
  • 如果代理服务器处理请求的时间较长,可能需要适当增加 proxy_send_timeout 的值,以避免超时错误。
  • 该指令通常与 proxy_read_timeoutproxy_connect_timeout 一起使用,以全面控制代理请求的超时行为。
纠错
反馈