Nginx 反向代理

    配置 Websocket 代理

    1. # 至少需要一个 Hyperf 节点,多个配置多行
    2. upstream hyperf_websocket {
    3. # 设置负载均衡模式为 IP Hash 算法模式,这样不同的客户端每次请求都会与同一节点进行交互
    4. ip_hash;
    5. # Hyperf WebSocket Server 的 IP 及 端口
    6. server 127.0.0.1:9503;
    7. server 127.0.0.1:9504;
    8. }
    9. server {
    10. listen 80;
    11. server_name websocket.hyperf.io;
    12. location / {
    13. # WebSocket Header
    14. proxy_http_version 1.1;
    15. proxy_set_header Upgrade websocket;
    16. proxy_set_header Connection "Upgrade";
    17. proxy_set_header X-Real-IP $remote_addr;
    18. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    19. proxy_set_header Host $http_host;
    20. # 客户端与服务端无交互 60s 后自动断开连接,请根据实际业务场景设置
    21. proxy_read_timeout 60s ;
    22. # 执行代理访问真实服务器
    23. proxy_pass http://hyperf_websocket;
    24. }