【websocket】nginx 代理 websocket 的关键配置

在 nginx 的配置文件中,可以通过以下配置来实现 websocket 的代理:


http {

    upstream websocket {

        server <websocket_server_address>;

    }

    server {

        listen <nginx_server_port>;

        server_name <nginx_server_name>;

        location / {

            proxy_pass http://websocket;

            proxy_http_version 1.1;

            proxy_set_header Upgrade $http_upgrade;

            proxy_set_header Connection "upgrade";

        }

    }

}

其中,<websocket_server_address> 为 WebSocket 服务器的地址,<nginx_server_port> 为 Nginx 服务器监听的端口号,<nginx_server_name> 为 Nginx 服务器的域名或 IP 地址。

在上面的配置中,upstream 指令定义了一个名为 websocket 的反向代理服务器,它将请求转发给指定的 WebSocket 服务器。

location 指令则定义了代理规则,将所有请求都转发给 websocket 反向代理服务器。

同时,使用 proxy_http_version 指令将协议版本设置为 1.1,使用 proxy_set_header 指令设置 Upgrade 和 Connection 头,以启用 WebSocket 协议。

image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容