如何配置Nginx的Websocket?
要配置 Nginx 使用 WebSocket,需要完成以下几个步骤:
- 安装 Nginx
首先需要在服务器上安装 Nginx。可以通过包管理器获取或者下载源代码进行编译安装。
- 配置 Nginx
在 Nginx 配置文件中,在 http
块下添加以下内容:
以上配置中:
map
块将请求头中的Upgrade
字段映射为Connection
字段,用于告诉 Nginx 是否需要升级连接协议。upstream
块定义后端服务器地址,并命名为websocket
。server
块监听特定 IP 和端口,并将所有请求转发到location /
中。location /
块的try_files
指令将所有静态文件请求转发到@proxy
中,由 @proxy 代理实现。-
location @proxy
块开启协议升级并启用 WebSockets 协议,将所有请求代理到后端服务器。 -
配置后端服务器
在后端服务器上启动 WebSocket 服务,并监听 127.0.0.1:8000
。
示例1:
前端代码:
示例2:
后端代码:
以上示例代码中,前端代码通过 WebSocket 协议连接到 Nginx 提供的 WebSocket 服务,后端代码通过 websockets
库提供一个简单的 WebSocket 计数器服务。
- 重启 Nginx
使用以下命令重新加载 Nginx 配置文件:
这样就成功配置了 Nginx 的 WebSocket 服务。