介绍
在理解反向代理与负载均衡后就可以快速实现 websocket 的反向代理,在之前的配置 的配置上进行修改。
config (opens new window)
vim /etc/nginx/conf.d/default.conf
# 修改为以下内容
server {
listen 80;
server_name nginx.example.com;
#charset koi8-r;
access_log /var/log/nginx/nginx.access.log main;
error_log /var/log/nginx/nginx.error.log warn;
location /chat/ {
proxy_pass http://echo.websocket.org;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
nginx -s reload # 重载配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
test
接着在测试页面 (opens new window)将 Location 中的 ws://echo.websocket.org
替换为目标地址 ws://nginx.example.com/chat/
(需要修改本地 DNS),Connect 成功即为成功。