>운영 및 유지보수 >엔진스 >실시간 통신을 달성하기 위한 Nginx 역방향 프록시 WebSocket 구성

실시간 통신을 달성하기 위한 Nginx 역방향 프록시 WebSocket 구성

WBOY
WBOY원래의
2023-07-04 17:37:362906검색

실시간 통신을 달성하기 위한 Nginx 역방향 프록시 WebSocket 구성

WebSocket은 실시간 통신을 달성하기 위해 클라이언트와 서버 간에 지속적인 연결을 설정할 수 있는 네트워크 프로토콜입니다. Nginx는 고성능 웹 서버이자 역방향 프록시 서버입니다. Nginx의 역방향 프록시 구성을 통해 WebSocket 요청을 백엔드 서버에 프록시하여 WebSocket의 실시간 통신 기능을 실현할 수 있습니다.

다음은 Nginx 역방향 프록시 WebSocket을 구성하는 방법에 대한 예입니다.

  1. Install Nginx
    먼저 서버에 Nginx를 설치해야 합니다. 패키지 관리 도구(예: apt, yum 등)를 사용하여 설치할 수 있습니다. 설치가 완료되면 "nginx -v" 명령을 실행하여 설치된 Nginx 버전을 확인할 수 있습니다.
  2. Nginx 구성
    WebSocket 요청을 백엔드 서버로 전달할 수 있도록 Nginx의 역방향 프록시를 구성하세요. 일반적으로 "/etc/nginx/nginx.conf" 또는 "/etc/nginx/conf.d/default.conf" 경로에 있는 Nginx 구성 파일을 열고 다음 구성을 추가합니다.
server {
    listen 80;
    server_name your_server_domain;

    location / {
        proxy_pass http://your_backend_server;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

그 중, your_server_domain은 서버의 도메인 이름 또는 IP 주소이고, your_backend_server는 백엔드 서버의 주소 및 포트입니다.

  1. Restart Nginx
    구성을 완료한 후 구성을 적용하려면 Nginx 서버를 다시 시작해야 합니다. Nginx는 다음 명령을 사용하여 다시 시작할 수 있습니다:
sudo service nginx restart
  1. 백엔드 서버
    백엔드 서버에서는 WebSocket 요청을 처리할 수 있는 코드를 작성해야 합니다. 여기서는 Node.js를 예로 들어 간단한 WebSocket 서버를 생성합니다.
const WebSocket = require('ws');

const wss = new WebSocket.Server({ port: 8080 });

wss.on('connection', ws => {
    console.log('New client connected');

    ws.on('message', message => {
        console.log(`Received message: ${message}`);
    });

    ws.on('close', () => {
        console.log('Client disconnected');
    });
});

위 코드는 WebSocket 서버를 생성하고 각각의 새 클라이언트가 연결될 때 로그를 인쇄하고 연결이 수신되고 닫힐 때 각각 인쇄됩니다. .

  1. Testing
    이제 WebSocket 클라이언트 도구(예: 브라우저 개발자 도구, Postman 등)를 사용하여 WebSocket의 실시간 통신 기능을 테스트할 수 있습니다. WebSocket 요청을 Nginx 서버로 전송함으로써 Nginx는 처리를 위해 요청을 백엔드 서버로 전달합니다.

위 단계를 통해 Nginx의 역방향 프록시를 성공적으로 구성하고 WebSocket의 실시간 통신 기능을 구현했습니다.

요약: Nginx 역방향 프록시 WebSocket 구성은 WebSocket 요청을 백엔드 서버로 프록시하여 실시간 통신을 가능하게 합니다. 위 단계를 통해 WebSocket을 지원하도록 Nginx를 쉽게 구성하고 백엔드 서버에 코드를 작성하여 WebSocket 요청을 처리할 수 있습니다. 이러한 방식으로 Nginx의 고성능과 안정성을 활용하여 실시간 통신 기능을 구현할 수 있습니다.

위 내용은 실시간 통신을 달성하기 위한 Nginx 역방향 프록시 WebSocket 구성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.