NGINX 윈도우 버전 다운로드와 설치

nginx_win_01

NGINX 공식사이트에서 윈도우용 바이너리를 다운로드 합니다.

다운로드 받은 파일의 압축을 풀어 적당한 위치에 옮겨 준 후 윈도우의 명령 프롬프트(CMD)를 실행합니다.

CMD에서 NGINX의 경로로 이동후 nginx.exe를 실행합니다. 혹은 아주 심플하게 nginx.exe를 더블클릭해 실행합니다.

CMD에서 NGINX의 명령어는 다음과 같습니다.

  • nginx.exe -s stop # 강제 종료 (fast shutdown)
  • nginx.exe -s quit # 접속한 사용자의 처리가 다 끝난 후 종료 (graceful shutdown)
  • nginx.exe -s reload # 설정파일 갱신(reloading the configuration file)
  • nginx.exe -s reopen # 로그파일 갱신(reopening the log files)

명령어는 리눅스 베이스의 NGINX와 같습니다.

방화벽에 NGINX 등록하기

nginx_win_firewall_01

nginx_win_firewall_02

제어판 – Windows 방화벽에서 왼쪽 탭의 ‘Windows 방화벽을 통해 앱 또는 기능 허용’ 을 클릭 후 ‘다른 앱 허용’ 버튼을 클릭해 NGINX.exe 를 등록 한 후 사용하는 네트워크에 맞춰 방화벽을 적용시켜주면 NGINX에서 사용하는 포트는 자동으로 열립니다.

윈도우 서비스에 NGINX 등록

nginx_win_02

위의 방법으로 NGINX를 실행했을 경우 로그인한 계정 위에 백그라운드로 프로그램이 떠있기 때문에 시스템 데몬이 아닌 응용프로그램처럼 취급됩니다. 다시 말해 사용자 계정을 로그오프시 NGINX의 데몬도 죽어버리는데요.

윈도우를 부팅후 로그인 하지 않아도 자동으로 실행되게 하기위해 데몬을 스케쥴러에 등록하면 어떨까 했는데 시스템 종료에 대한 트리거를 지원하지 않아 스케쥴러로 해결을 못하지 못했습니다. 강제종료가 되버리면 프로그램의 오작동이나 에러를 피하기 위해 시작 프로그램에 등록해 사용하는 원시적인 방법은 사용하지 않고 윈도우의 서비스에 등록할수 있을까 해서 구글링을 하다 한 블로그에서 간단하게 서비스로 등록할수 있는 툴을 올려놔서 사용해봤습니다. Github 링크도 있었는데 2011년에 업데이트가 멈춰있는걸로 봐선 사용상에 문제가 없나봅니다. 실제로도 잘 작동하구요.

컴파일된 파일인 nginx-svc-bin.zip 을 다운받아 nginx 안에 풀어줍니다. 폴더 안의 readme 파일을 열어보면 사용방법이 자세하게 설명되어 있지만 간단하게 설명하자면

nginxsvc.exe.config 파일을 에디터로 열어 4번째 라인의 경로를 NGINX의 경로로 설정해 준 다음 저장합니다. 참고로 5~6번째 줄은 서비스 종료시 graceful shutdown으로 종료할지, fast shutdown으로 종료할지를 true/false 값으로 설정할수 있습니다.

그리고 CMD로 nginx-svc-bin의 파일이 풀린 위치로 이동 후 위의 명령어를 입력하면 윈도우의 서비스에 NGINX가 등록이 완료됩니다.

반대로 서비스에서 삭제하고 싶으면 위와 같이 입력합니다.

nginx_win_03

정상적으로 등록이 되었는지 확인합니다.

PG

익스트림 매뉴얼 주인장 PG입니다. 다방면의 디지털 기술에 관심이 많고 삽질을 즐겨합니다. 포스트 내용중 궁금한 점이 있다면 댓글로 남겨주세요.

익스트림 매뉴얼의 모든 내용은 불펌금지 입니다. 자세한 내용은 링크를 참조하세요.

댓글이 없습니다.