본문 바로가기

프로젝트/PHP

ec2에 APM setup하기

서론

 

APM이란 웹 서버 소프트웨어인 Apache, 동적 웹 페이지용 언어인 PHP DBMS인 MySQL의 조합을 말하는 단어이다. 

보통 웹 사이트를 만들고자 한다면 APM setup부터 시작한다. 

 

오늘은 ec2에 할당받은 아마존 리눅스에 APM을 셋업해보도록 하겠다.

 

본론

 

1. 우선 ec2 인스턴스에 연결한다.

이에 대한 방법은 아래 아마존 자습서에 상세히 설명되어있다.

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/putty.html

 

PuTTY를 사용하여 Windows에서 Linux 인스턴스에 연결 - Amazon Elastic Compute Cloud

PuTTY를 사용하여 Windows에서 Linux 인스턴스에 연결 다음 지침에서는 Windows용 무료 SSH 클라이언트인 PuTTY를 사용하여 인스턴스에 연결하는 방법을 설명합니다. 인스턴스에 연결을 시도하는 동안 오류가 발생한 경우 인스턴스 연결 문제 해결을 참조하십시오. 인스턴스를 시작한 후 인스턴스에 연결하고 바로 앞에 있는 컴퓨터를 사용하는 것처럼 인스턴스를 사용할 수 있습니다. 참고 인스턴스를 시작한 후, 연결할 수 있도록 인스턴스가 준비될 때

docs.aws.amazon.com

 

2. 소프트웨어 패키지를 최신 상태로 업데이트 한다. 

[ec2-user ~]$ sudo yum update -y

 

3. yum install을 사용해 APM setup에 필요한 종속 프로그램을 모두 설치한다.

[ec2-user ~]$ sudo yum install -y httpd24 php70 mysql56-server php70-mysqlnd

 

4. Apache 웹서버를 실행한다.

[ec2-user ~]$ sudo service httpd start
Starting httpd:                                            [  OK  ]

 

5. chkconfig 명령을 사용하여 Apache가 매번 시스템이 실행될때 마다 자동으로 시작되게 한다.

[ec2-user ~]$ sudo chkconfig httpd on

 

6. 80포트를 열어주기 위해서 새로운 보안그룹 규칙을 추가한다.

ec2 인스턴스에서 왼쪽 메뉴 [네트워크 및 보안] -> [보안그룹]을 선택한다.

launch-wizard-1을 선택하고 인바운드 규칙 편집을 선택한다.

 

위와같이 입력해 새로운 보안 규칙을 작성한다.

 

7. 웹서버를 테스트한다. ec2 인스턴스의 공용 DNS 주소를 브라우저에 입력한다.

8. 파일 권한 설정을 위해 ec2-user을 apache그룹에 추가한다

이 설정을 하지 않으면 WinSCP를 통해 FTP를 해줄 수 없다.

[ec2-user ~]$ sudo usermod -a -G apache ec2-user
[ec2-user ~]$ exit
 
[ec2-user ~]$ groups
ec2-user wheel apache
[ec2-user ~]$ sudo chown -R ec2-user:apache /var/www
[ec2-user ~]$ sudo chmod 2775 /var/www
[ec2-user ~]$ find /var/www -type d -exec sudo chmod 2775 {} \;
[ec2-user ~]$ find /var/www -type f -exec sudo chmod 0664 {} \;

 

9. phpinfo.php를 실행해 php가 제대로 동작하는지 확인한다.

 

phpinfo.php

<?php phpinfo(); ?>

 

위의 코드대로 phpinfo.php파일을 생성한다.

WinSCP로 /var/www/html에 파일을 추가한다.

ec2 인스턴스의 공용 DNS 주소/phpinfo.php 로 들어가본다. 

 

 

이러한 예시가 뜬다면 성공이다.

 

참고 : https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/install-LAMP.html

'프로젝트 > PHP' 카테고리의 다른 글

php 이미지에 ttf 글씨 쓰기(gd 라이브러리)  (0) 2020.09.14