nginx upgrade 配置详解

3 min read

proxy_set_header Connection "upgrade";:设置请求头“Connection”,值为“upgrade”。这也是WebSocket请求所需的设置。

这里的 upgrade 详解
“upgrade”是HTTP协议中的一个字段值,用于表示请求升级为另一种协议。当客户端发起一个HTTP请求,请求头中包含“Connection: upgrade”字段,同时在“Upgrade: websocket”字段中指定所需要升级的协议为WebSocket时,服务器就会将这个HTTP连接升级为WebSocket连接。

在实际的应用场景中,通常是通过Nginx作为WebSocket的代理服务器,接收WebSocket连接请求,然后将其转发到应用服务器上,因此在Nginx中需要配置“proxy_set_header Connection "upgrade";”语句,将请求头中的“Connection”字段设置为“upgrade”,表示这是一个WebSocket请求,需要升级协议。

需要注意的是,在使用Nginx作为WebSocket代理服务器时,还需要配置WebSocket请求的端口号和路径等相关信息,以便正确地将WebSocket请求转发到应用服务器上进行处理。