본문 바로가기
한화시스템 Beyond SW Camp/기반기술

[리눅스] nginx 설치

by taeh00n 2024. 11. 24.

※ 이 글에서 다룬 기반기술, 프론트엔드, 백엔드, 데브옵스 등 풀스택 개발 지식은 모두 한화시스템 Beyond SW Camp 12기에서 배운 내용을 복습한 것입니다.

 

nginx

● nginx : 빠르고 효율적인 웹 서버로, 웹사이트를 운영할 때 방문자의 요청을 처리하고, 여러 서버에 트래픽을 분산시켜 성능을 최적화하는 역할

 


nginx 설치과정

1. 가상 컴퓨터 생성

2. IP 주소 설정

3. nginx 웹 서버 설치

4. 동작 확인

위의 과정으로 진행해보겠다.

 

1. 가상 컴퓨터 생성

https://taeh00n.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4%EA%B8%B0%EC%B4%88

 

리눅스_기초 : 가상 컴퓨터(VMware), 명령어, 권한

※ 이 글에서 다룬 기반기술, 프론트엔드, 백엔드, 데브옵스 등 풀스택 개발 지식은 모두 한화시스템 Beyond SW Camp 12기에서 배운 내용을 복습한 것입니다. 리눅스를 들어가기에 앞서 서버, 클라이

taeh00n.tistory.com

 

가상 컴퓨터 생성하는 과정은 위의 링크에 들어가면 확인할 수 있다.

 

2. IP 주소 설정

https://taeh00n.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4%EA%B8%B0%EC%B4%88-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EC%B4%88-IP%EC%A3%BC%EC%86%8C-%EC%84%A4%EC%A0%95

 

리눅스_기초 : 네트워크 기초, IP주소 설정

※ 이 글에서 다룬 기반기술, 프론트엔드, 백엔드, 데브옵스 등 풀스택 개발 지식은 모두 한화시스템 Beyond SW Camp 12기에서 배운 내용을 복습한 것입니다. 네트워크 기초 네트워크 : 데이터를 주

taeh00n.tistory.com

IP 주소를 설정하는 과정도 위의 링크에서 확인할 수 있다.

 

3. nginx 웹 서버 설치

 

nginx 설치 명령어

apt install -y nginx

질문에 대한 답을 모두 Yes로 하고 싶으면 위와 같이 -y 옵션을 추가해서 명령어를 입력해도 된다.

 

4. 동작 확인

nginx의 동작을 확인하기 위해서 nginx를 실행해야한다.

nginx 실행

nginx를 실행하면 특별히 다른 문구가 뜨지 않아 실행이 됐는지 확인할 수 없다.

그래서 실행되고 있는지 상태를 확인하는 명령어를 입력해줘서 확인해야한다.

nginx 상태 확인 (active중)

active (running)이라고 뜨는것을 보니 정상적으로 잘 실행되고 있는 것을 확인할 수 있다.

확인을 했으면 q를 눌러 나올 수 있다.

 

nginx는 기본적으로 80번에서 작동된다.

그러면 nginx가 실제로 80번 포트를 열고 네트워크 요청을 받을 준비가 되어있는지 확인해보겠다.

명령어가 실행되지 않는 모습

netstat 명령어를 찾을 수 없으니 apt install net-tools 명령어를 실행하라는 문구가 떴다.

 

설치 후 다시 명령어 입력

netstat-tools를 설치 후 다시 실행해보니 80번 포트에서 LISTEN 상태인 것을 확인할 수 있다.

그러면 systemctl status nginx와 netstat -anlp | grep :80이 둘 다 nginx 켜져 있는지 확인하는거지 않나 라고 생각할 수 있는데 systemctl status nginx는 nginx 서비스가 실행되고 있는지 상태를 확인하는 것이고 netstat -anlp | grep :80은 80번 포트를 열고 실제로 네트워크와 통신할 준비가 됐는지를 보는 명령어이므로 두 명령어는 다른 것을 확인할 수 있다.

 

윈도우에서 웹 브라우저로 nginx 서버 접속

윈도우에서 80번 포트의 /로 접속하니 nginx가 정상적으로 실행되는 것을 볼 수 있다.

위의 사진처럼 뜨는 이유를 알아보겠다.

nginx 기본 파일

nginx는 기본적으로 /var/www/html/ 디렉터리를 웹 콘텐츠의 저장 위치로 사용한다.

그리고 Nginx가 설치될 때 이 디렉터리 아래에 index.nginx-debian.html 파일이 자동으로 생성된다.

이 파일은 Nginx 설치 후 웹 서버가 정상적으로 작동하는지 확인할 수 있는 기본적인 HTML 페이지이다. 쉽게 말해 테스트용 HTML 파일이라 생각하면 된다.

 

taeh00n.html 파일 생성

그러면 테스트용 HTML 파일이 아닌 taeh00n.html 파일을 새로 생성해보겠다.

taeh00n.html에 접속

정상적으로 잘 연결되는 것을 확인할 수 있다.

다른 사람이 접속을 하려면 '포트포워딩'을 해줘야한다.

https://taeh00n.tistory.com/entry/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC%EA%B8%B0%EC%B4%88-%EC%82%AC%EC%84%A4-IP-%EA%B3%B5%EC%9D%B8-IP

 

네트워크_기초 : 사설 IP, 공인 IP

사설 IP, 공인 IP IP 주소는 32비트로 구성되어 있어 약 43억 개의 IP 주소 범위가 존재한다. 하지만 이 수는 전 세계에서 모든 장치에 할당하기엔 한정적이기 때문에 공인 IP와 사설 IP로 나누어 사용

taeh00n.tistory.com

포트포워딩에 관한 내용은 위의 링크에서 확인할 수 있다.

 

URL에 :80을 명시하지 않아도 기본적으로 포트 80을 사용하기 때문에 브라우저의 주소창에서 :80이 사라지는 것이다.