nginx 配置websocket长连接ws协议

利用 ip + prot 连接websocket服务器,缺点:

    1. 暴露服务器地址和端口;

    2. 只能单节点部署,无法做集群;

    3. 诸多缺点。

#配置upstream

upstream my-server {
        least_conn;

        # 微服务网关地址
        server 192.0.1.22:8888 weight=5 max_fails=2 fail_timeout=50;
}

#配置server

server
{
    listen       80;
    charset utf-8;
    server_name  sokcet.com;
    add_header    Cache-Control  max-age=43200;
    location / {

        # web页面路径配置
        root /home/webdata/test;
        index  index.html index.htm;
    }
    location /test-server {
        root   html;
        index  index.html index.htm;
        proxy_pass http://my-server/test-server;
    }
    location /socket {
        proxy_pass http://192.1.1.20:8081/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_redirect     off;
        proxy_set_header   Host $host;
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Host $Server_name;
        proxy_connect_timeout 12000s;
        proxy_read_timeout 36000s;
        proxy_send_timeout 36000s;
    }
}


配置完后,回到bin目录,重启Nginx:

nginx -s reload

域名连接websocket,连接地址:

ws://socket.com/socket/demo/test

    1. socket.com是上面配置的server_name;

    2. /socket 是location /socket的配置路径;

    3. /demo/test 是websocket服务端接口地址。

以上配置亲测有效!

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值