>  기사  >  운영 및 유지보수  >  웹소켓을 지원하도록 Nginx를 구성하는 방법

웹소켓을 지원하도록 Nginx를 구성하는 방법

王林
王林앞으로
2023-05-17 21:28:135471검색

1. wss 및 nginx 프록시 wss에 대한 이해:

1. wss 프로토콜은 실제로 websocket+SSL입니다. 이는 https(http+SSL)와 유사하게 websocket 프로토콜에 SSL 레이어를 추가하는 것을 의미합니다.

2. nginx를 사용하여 wss 프록시 [통신 원리 및 프로세스]

  • 클라이언트는 nginx에 대한 wss 연결을 시작합니다.

  • Nginx는 WSS 프로토콜 데이터를 Workerman의 WebSocket 프로토콜 포트로 전달하고 이를 WS 프로토콜 데이터로 변환합니다

  • Workerman은 데이터를 받은 후 비즈니스 로직 처리를 합니다

  • Workerman이 클라이언트에 메시지를 보낼 때는 반대 프로세스입니다. 데이터는 nginx/에 의해 wss 프로토콜로 변환된 다음 클라이언트로 전송됩니다

2. Nginx는 websocket 구성을 지원합니다

server {
      listen   80;
      server_name 域名;
      location / {
        proxy_pass   http://127.0.0.1:8080/; // 代理转发地址
     proxy_http_version 1.1;
        proxy_read_timeout   3600s; // 超时设置
        // 启用支持websocket连接
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
      }
      location /upload { // 静态资源地址
            root   /mnt/resources;        
      }
}

중요한 것은 이 두 줄입니다. 이는 websocket 연결이 들어올 때 http 연결을 websocket 연결로 전환하기 위해 연결 업그레이드가 수행된다는 것을 나타냅니다.

proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";

proxy_read_timeout; 구성되지 않은 경우 기본값은 60초입니다. 사용되는 http 버전은 1.1입니다.

위 내용은 웹소켓을 지원하도록 Nginx를 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제