[Linux] Ubuntu Nginx 설치

728x90

 

NGINX란?

트래픽이 많은 웹사이트 서버인(WAS)를 도와주는 비동기 이벤트 기반구조의 경량화 웹 서버 프로그램이다.
클라이언트로부터 http 요청을 받았을 때 요청에 맞는 정적 파일을 응답해주는 HTTP Web Server로 활용되기도 하고, 또는 Reverse Proxy Server로 활용하여 WAS의 부하를 줄일 수 있는 로드밸런서 역할을 하기도 한다.

 

필자가 NGINX 를 사용하는 이유는 도메인 연결을 했을 때 뒤에 포트가 보이는 상황을 방지하고자

서버 내부에 NGINX 를 사용하여 포트를 감추는 역할로 사용하였고

 

리버스 프록시를 사용하여 들어오는 요청을 매핑 해주는 역할로 사용하였다.

 

필자의 리눅스 서버는 Ubuntu20 버전이다.

 

nginx 설치

nginx 설치 전 apt 를 업데이트를 시킨다.

$ sudo apt update
$ sudo apt upgrade

 

 

nginx 설치 명령어

sudo apt install nginx

 

 

위 명령어를 치면, 이제 무언가를 

After this operation, 7,925 kB of additional disk space will be used.
Do you want to continue? [Y/n] y

 

라는 문구가 보이며 잠깐 설치가 멈출 텐데 이때 Y 를 눌러 설치를 계속 진행을 해야 한다.

 

# nginx 시작 
sudo systemctl start nginx

# nginx 상태 확인
sudo systemctl status nginx

 

설치가 끝난 후 위 명령어를 통해 엔진엑스를 실행 시킨다.

 

설치된 엔진엑스 파일들은 루트 경로( / )에서  /etc/nginx 경로에 다 있으니 참고하길 바란다.

 

추후 엔진엑스 설정을 할 때 위 경로에 들어가서 해야하니 알아두길 바란다.
 

기본적인 환경 설정 파일의 경로는 /etc/nginx/conf.d 디렉토리 하위의 default.conf에 있다.

 

실질적으로 파일 설정을 수정해야 하는 부분은 

/etc/nginx/sites-enabled 위 경로이다.

 

그리고 위 경로에 설정을 추가한 후 적용하기 위해 심볼릭 링크를 걸어 주면

/etc/nginx/sites-available 위 경로에 적용이 되고 NGINX 설정이 적용이 된다.

 

그 후 엔진엑스 설정이 맞는지 체크 후 재시작을 해준다.

1) 테스트
nginx -t

2) 변경 사항 적용
sudo systemctl restart nginx

3) 부팅 혹은 재부팅 시 nginx 자동 시작
sudo systemctl enable nginx

 

위 설정이 끝나면 정상적으로 엔진엑스가 적용이 될것이다.

부가적인 엔진엑스 파일 설정은 간단하게 아래에 있습니다.

server {
    listen 80;
    server_name www.도메인.com;

     if ($host = www.도메인.com) {
        return 301 https://$host$request_uri;
        }
}

 

위 간단한 설정을 통하여 엔진엑스를 사용할 수 있습니다.

 

 

REF 

https://velog.io/@xangj0ng/Linux-Ubuntu-Nginx-%EC%84%A4%EC%B9%98

https://jost-do-it.tistory.com/entry/Ubuntu-%EB%B0%A9%ED%99%94%EB%B2%BD-%EC%84%A4%EC%A0%95-%EB%B0%8F-%EC%99%B8%EB%B6%80-%ED%8F%AC%ED%8A%B8-%ED%97%88%EC%9A%A9-%EC%84%A4%EC%A0%95

 

728x90