nginx反向代理实现多台服务器部署

一、 nginx反向代理功能的实现

  1. upstream wsbackend {
  2. server 192.168.0.102:8080;
  3. server 192.168.0.100:8080;
  4. hash $request_uri;
  5. }
  6. map $http_upgrade $connection_upgrade {
  7. default upgrade;
  8. '' close;
  9. }
  10. server {
  11. listen 80;
  12. server_name localhost;
  13. location / {
  14. proxy_pass http://wsbackend;
  15. }
  16. #默认以chat开头的都指向wsbackend规则
  17. location ^~ /chat {
  18. proxy_pass http://wsbackend;
  19. #默认反向代理的时间是1分钟,如果超过1分钟会把这个长链接给关系,所以需要手动配置一下链接超时时间
  20. proxy_connect_timeout 500s;#保持时间的连接的时间长度
  21. proxy_read_timeout 500s;#保持给后端读取的时间长度
  22. proxy_send_timeout 500s;#保持给发送数据时间的长度
  23. proxy_set_header Upgrade $http_upgrade;#前端传过来websocket字符串
  24. proxy_set_header Connection "Upgrade";
  25. }
  26. }
  27. }