만들어진 ec2 서버에 Nginx와 php-fpm환경을 구성해보자.
Nginx
엔진엑스라고 읽는다. 보통 우리는 웹개발을 할 떄 apache 웹서버를 접한다. 엔진엑스도 웹서버 소프트웨어이다.
Nginx는 요청에 응답하기 위해 비동기 이벤트 기반 구조를 가진다.
이것은 아파치 HTTP 서버의 스레드/프로세스 기반 구조를 가지는 것과는 대조적이다.
이러한 구조는 서버에 많은 부하가 생길 경우의 성능을 예측하기 쉽게 해준다.
https://www.nginx.com/resources/wiki/start/topics/tutorials/install/
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 화면이 뜰 것이다.
'서버 > AWS EC2' 카테고리의 다른 글
AWS EC2에 MySQL 설치하고 개발환경 구성하기 (0) | 2020.08.03 |
---|---|
AWS EC2 가비아에서 도메인을 사서 IP주소와 연결시켜보자 (0) | 2020.08.03 |
AWS EC2에 PHP-fpm 설치 (0) | 2020.08.03 |
AWS EC2 서버 구동, WINSCP로 로컬에서 연결하기 (0) | 2020.08.03 |
AWS (아마존 웹 서비스) (0) | 2020.08.03 |