본문 바로가기

서버/AWS EC2

AWS EC2에 Nginx 설치

만들어진 ec2 서버에 Nginx와 php-fpm환경을 구성해보자.

 

https://www.nginx.com/

Nginx

엔진엑스라고 읽는다. 보통 우리는 웹개발을 할 떄 apache 웹서버를 접한다. 엔진엑스도 웹서버 소프트웨어이다.

Nginx는 요청에 응답하기 위해 비동기 이벤트 기반 구조를 가진다.

이것은 아파치 HTTP 서버의 스레드/프로세스 기반 구조를 가지는 것과는 대조적이다.

이러한 구조는 서버에 많은 부하가 생길 경우의 성능을 예측하기 쉽게 해준다.

 

https://www.nginx.com/resources/wiki/start/topics/tutorials/install/

 

Install | NGINX

There are currently two versions of NGINX available: stable (1.10.x), mainline (1.11.x). The mainline branch gets new features and bugfixes sooner but might introduce new bugs as well. Critical bugfixes are backported to the stable branch. In general, the

www.nginx.com

nginx 공식사이트 설치 메뉴얼

 

 

 

 

 

 

1. PuTTY 켜기

먼저 이전에 연결해둔 winscp 상단을 보면 저 버튼이 활성화 되어 있을 것이다.

저 버튼을 누르면 putty가 켜지면서 리눅스  쉘로 ec2서버를 조작할 수 있다.

 

 

 

 

 

2. Nginx 설치

아주 간단하다.

$ sudo apt-get update
$ sudo apt-get install nginx

 

nginx를 처음 설치하면 환경설정파일의 경로가 /etc/nginx/sites-available/default 로 잡힌다.

이후 설정할 때 필요하므로 기억해두자.

 

 

 

 

 

3. Nginx 시작

// 시작
$ sudo service nginx start
$ sudo systemctl start nginx
$ sudo /etc/init.d/nginx start

// 재시작
$ sudo service nginx restart
$ sudo systemctl restart nginx
$ sudo /etc/init.d/nginx restart

// 중지
$ sudo service nginx stop
$ sudo systemctl stop nginx
$ sudo /etc/init.d/nginx stop

위 명령어로 nginx를 시작해보자.

 

 

 

 

 

4. ec2 인바운드규칙 만들기

 

ec2의 인바운드 규칙을 만들기 이전에 한가지 알아야 할 게 있다.

 

Port(포트)

 - 포트(port)는 운영 체제 통신의 종단점이다.

 - 소프트웨어에서는 네트워크 서비스나 특정 프로세스를 식별하는 논리 단위이다.

 - 전송 계층 프로토콜에서 주로 사용 (ex. TCP, UDP)

 - 각 포트는 번호로 구별되며 이 번호를 포트 번호라고 한다. 포트 번호는 IP 주소와 함께 쓰여 해당하는 프로토콜에 의해 사용된다.

 

포트는 하나의 프로세스(프로토콜을 사용하는)를 특정하는 번호이며 프로토콜마다 정해진 포트번호가 있다.

  • 20 : FTP(data)
  • 21 : FTP(제어)
  • 22 : SSH
  • 23 : 텔넷
  • 53 : DNS
  • 80 : 월드 와이드 웹 HTTP

AWS EC2의 인바운드 규칙은

우리가 만든 EC2 서버로

프로세스(프로토콜)가 들어오기 위한

인(IN)바운드(BOUND, 경계) - 안으로 들어오는 경계

를 열어주는 것이다.

 

 

비유하자면 ...

'서버'라는 '매장'에 

'프로세스'라는 각각의 '사람'이

'프로토콜'이라는 각각의 '신분'을 가지고

'포트'라는 정해진 각각의 ''을 열고 들어오는 것이라고 비유할 수 있겠다.

 

그리고 그 포트마다 포트번호 라는 문 번호가 있는 것이다.

 

 

그럼 ec2의 인바운드 규칙을 지정해 보자.

 

 

 

 

4-1) EC2의 대시보드에서 [실행중인 인스턴스] 클릭 후 내 인스턴스를 선택하고 하단의 [설명] 탭의 보안그룹에 연결된 보안그룹의 이름을 확인한다.

 

 

 

4-2) 좌측의 메뉴중 네트워크 및 보안 - 보안그룹을 클릭하고 위에서 확인한 보안그룹 이름과 같은 보안그룹 이름을 찾고 클릭, 하단의 인바운드 탭 클릭, 인바운드규칙 편집 클릭

 

 

 

 

 

4-3) 우리는 Nginx를 이용하여 http프로토콜을 사용할 것이므로 HTTP를 클릭하고 소스를 위치무관으로 선택해준다.

이후 규칙 저장.

 

 

 

이제 우리는 HTTP를 이용하여 우리의 EC2서버로 접근할 수 있게 된 것이다 !

 

 

 

 

 

5. 이제 웹 브라우저를 열고 EC2의 IPv4 퍼블릭 IP를 입력하면 아래의 Nginx welcome 화면이 뜰 것이다.

 

이 창이 뜨면 성공!