개요
NginX란?
NginX는 가장 많이 사용되는 웹 서버 소프트웨어 중 하나이다. 웹 서버란, 웹 브라우저(ex. 크롬)의 요청에 따라 HTML, 이미지 등의 정보를 제공하는 소프트웨어 또는 그런 기능을 탑재한 컴퓨터를 말한다. 웹 서버 <-> 웹 브라우저간 HTTP, HTTPS 프로토콜로 통신하며, 웹 브라우저는 웹 서버에서 전송된 정보를 사람이 보기 편한 형태로 번역해서 화면에 표시해준다.
보통 웹 서비스를 개발할 때, 웹 서버 + WAS(웹 애플리케이션 서버) 조합으로 구성한다. WAS는 주로 데이터베이스로 관리되는 데이터를 처리하는 서버를 말한다. 웹 브라우저에서 사용자의 요청이 들어옴 -> 웹서버 -> WAS [데이터 처리] & WAS [데이터 전송] -> 웹서버 [HTML, 이미지 등 전송] -> 웹 브라우저 [요청된 결과를 사용자 화면에 표시] 순서로 이루어진다.
예를 들어 브라우저에서 http://yewon-lee.tistory.com/mypost 주소로 요청했을 때, 웹 서버는 데이터를 처리하는 WAS 주소인 https://yewon-lee.tistory.com/mypost 주소로 요청 정보를 넘겨준다(Proxy 기능). 그리고 WAS에서 처리 결과를 다시 넘겨받아 웹 브라우저에 넘겨주는 역할을 한다.
설치
1. Homebrew로 설치하기
맥 터미널에서 아래 커맨드를 입력한다.
$ brew install nginx
2. NginX 시작하기
Jenkins 설치 및 실행할 때랑 유사하게 brew services [start|stop|restart] nginx 형식의 커맨드를 날리면 된다.
$ brew services start nginx

그리고 웹 브라우저를 열어 localhost:8080에 접속하면 아래와 같은 화면이 나온다.

3. 기본 Port 변경하기
NginX 를 설치했을 때 자동으로 8080 포트를 사용하는 등의 설정은 /opt/homebrew/etc/nginx/nginx.conf 에서 할 수 있다.
혹은 아래 커맨드를 입력해 원하는 파일 위치를 찾을 수 있다.
$ sudo find / -name nginx.conf
터미널에서 간편하게 사용할 수 있는 nano를 사용해 80번을 기본 포트로 사용하도록 수정해보자.
$ nano /opt/homebrew/etc/nginx/nginx.conf
아래 사진은 nginx.conf 파일의 일부분인데, listen을 8080 -> 80 으로 수정 후 저장했다. (Ctrl + X)
80번은 가장 기본 포트이므로, 웹 브라우저에서 localhost 으로만 입력 후 접속해도 localhost:80 으로 접속된다.

위에서 수정한 내용을 반영하기 위해서 아까 nginX를 시작할 때 커맨드에서 restart로만 바꿔서 실행할 수도 있지만,
서버 중단 없이 재실행 해본다.
무중단 NginX 재실행 커맨드
$ sudo nginx -s reload

'Study > Server' 카테고리의 다른 글
[Kubernetes] 도커 데스크톱에서 쿠버네티스 사용하기 (Mac OS) (0) | 2024.09.23 |
---|---|
[Kubernetes] Mac M1 - kubectl 설치하기 (ft. 카카오 클라우드) (0) | 2024.09.10 |
[Jenkins] (3) 빌드 후 애플리케이션 자동 실행 설정 시도하기 (권장❌) (0) | 2024.08.27 |
[Jenkins] 비밀번호 잊어버렸을 때 변경하기 (0) | 2024.08.26 |
[Jenkins] (2) Mac 로컬에서 Maven 프로젝트 GitHub 연동 및 자동 빌드하기 (0) | 2024.08.21 |