네트워크 / 보안

엔진엑스(Nginx)

엔진엑스(Nginx)는 정적 파일 제공, 요청 전달, HTTPS 처리를 맡을 수 있는 오픈소스 웹 서버이자 리버스 프록시입니다.

쉬운 설명

웹 서버와 리버스 프록시로 널리 사용하는 오픈소스 서버 소프트웨어.

배경과 쓰임까지 이해하기

조금 더 자세히

엔진엑스(Nginx)는 웹사이트 파일을 제공하고 외부 요청을 내부 앱으로 전달하는 오픈소스 서버 소프트웨어입니다. VPS에서 Node.js 앱이나 여러 Docker 서비스를 운영할 때 앞단의 리버스 프록시로 자주 사용합니다. 예를 들어 인터넷의 80·443 포트로 받은 요청을 `localhost:3000`에서 실행 중인 앱으로 전달할 수 있습니다.

설정 자유도가 높은 대신 설정 파일, HTTPS 인증서, 방화벽을 함께 관리해야 합니다. 한마디로, Nginx는 웹 요청을 받고 분배하는 널리 쓰이는 웹 서버이자 리버스 프록시입니다.

실제로는 이렇게 만나요

Nginx가 80·443 포트에서 요청을 받고, 실제 앱이 실행 중인 `localhost:3000`으로 전달하도록 설정할 수 있습니다.

  • 이런 거 할 때 나와요 VPS에서 여러 웹앱을 운영하거나 Node.js 앱 앞에 도메인과 HTTPS를 붙일 때 자주 사용됩니다.
  • 이렇게 생겼어요 엔진엑스(Nginx)은(는) Reverse Proxy, Caddy, Server 같은 주변 개념과 함께 문서, 설정 화면, 오류 메시지에서 자주 보입니다.
  • 나오는 화면 예시 네트워크 / 보안 작업을 하다가 Reverse Proxy, Caddy, Server를 확인하는 화면

헷갈리기 쉬운 점

설정 파일 문법과 서버 방화벽을 함께 확인해야 합니다. 설정을 바꾼 뒤에는 문법 검사 후 다시 불러오는 편이 안전합니다.

왜 알아두면 좋을까요?

VPS에서 여러 웹앱을 운영하거나 Node.js 앱 앞에 도메인과 HTTPS를 붙일 때 자주 사용됩니다.

Checklist

실제로 볼 때 확인할 것

  1. 01

    요청을 받을 도메인을 정한다

  2. 02

    내부 앱의 주소와 포트를 확인한다

  3. 03

    설정 검사 후 Nginx를 다시 불러온다

관계 지도