반응형

안녕하세요. 이번 포스트는 AWS Educate 계정에서 사용가능한 리전 "버지니아 리전" 에서 운영중이던 블로그를

AWS 일반 계정의 한국 리전으로 옮기고, 도메인을 elbpdpdp.tk 에서 hakmoon.com으로 변경했던 작업 내용을 공유하려고 합니다.  <2-3 편>

 

이전 포스트의 2-1,2) 작업을 공유합니다.

- EC2 인스턴스 WEB-master 에 접속하여, RDS DB 를 백업한다

- EC2 인스턴스 내부의 CONFIG 를 수동(사실상 노가다) 백업한다.

- 1,2번 바탕으로 새로운 인프라에 복원

 

위의 바탕으로 새로 넣을 리전( AWS 계정)의 인프라에 복원(구축) 해봅시다.

이번에는 EC2 웹 서버 세팅을 해봅시다.

 

아래 게시글을 참조하셔도 좋습니다.

 

웹 서버 만들기(Apache-PHP-Mysql) (1. 아파치 설치 - RPM(YUM))

안녕하세요. 웹 서버(Apache-PHP-Mysql) 구축 방법에 대해 공유해보려고 합니다. 리눅스 기준 OS(VM)가 준비가 되지 않은 경우 이 게시글 먼저 확인해주세요. 아래 내용은 OS(Centos 7.x) 기준으로 진행하였

jun2mun.tistory.com

 


구성목표


반응형

1. 웹 소스 , RDS 덤프본 이동

많은 분들이 FTP 소프트웨어 FileZila, 알 FTP 로 파일을 옮기는 것으로 알고 있습니다. 이왕이면 사용하실때, 보안이 떨어지는 FTP 프로토콜 보다는 sftp 프로토콜로 파일을 업로드 다운로드하는게 조금 더 낫다고 생각합니다. 소프트웨어 내에서 설정 변경 가능합니다.

 

저는 shell로 옮기기로 하였으며, sftp 사용법은 간단합니다. SSH 접근처럼 sftp로 로그온 한 후, put 명령어로 업로드 get 명령어로 다운로드를 진행하면 됩니다.

 

sftp -i "${key pair name}.pem or .ppk ec2-user@${IP}

put ${web source}
put ${MySQL DUMP}

 

2. 웹 서버 구축 ( Apache + php) 

제 게시글을 따라오신 분이라면 기본 레포에서 사용가능한 Apache, php 버전을 확인하셨을 겁니다.

저의 경우, php 7.4 버전이 필요합니다. 그런데 레포에 없다? 그럴때, Amazon Linux 2 AMI OS에서 

amazon-linux-extras을 사용하여, 필요 버전을 찾아볼 수 있습니다.

 

Amazon linux OS에서 amazon-linux-extras 사용 방법
참고 : https://aws.amazon.com/ko/premiumsupport/knowledge-center/ec2-install-extras-library-software/

 

PHP 레포를 새로 찾지 않고 amazon-linux-extras를 사용한 방법입니다.

 

[root@ip-172.xx.x.xxx ~]#amazon-linux-extras enable php7.4
[root@ip-172.xx.x.xxx ~]#amazon-linux-extras list php7.3
--> output
 42  php7.4=latest            enabled      [ =stable ]
 
[root@ip-172.xx.x.xxx ~]# yum clean metadata && yum install \
php-cli php-pdo php-fpm php-json php-mysqlnd

[root@ip-172-31-0-109 ~]# php -v
PHP 7.4.21 (cli) (built: Jul  7 2021 17:35:08) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

 

Apache 는 2.4.xx  버전 이상이면 모듈 버전이나 호환성에서 상관이 없어서 기존과 마이너 버전만 다르게 설치 진행하였습니다.

 

[root@ip-xxx.xx.x.xxx ~]# yum install -y httpd httpd-devel 등..

[root@ip-xxx.xx.x.xxx ~]# rpm -qa | grep httpd
httpd-devel-2.4.48-2.amzn2.x86_64
httpd-filesystem-2.4.48-2.amzn2.noarch
generic-logos-httpd-18.0.0-4.amzn2.noarch
httpd-2.4.48-2.amzn2.x86_64
httpd-tools-2.4.48-2.amzn2.x86_64

 

설치가 완료되면, 설정 파일을 수정하도록 하자.

/etc/httpd/conf/httpd.conf ( 아파치)

 /etc/php.ini (PHP)

 

#### HTTPD 파일 수정 #####
[root@ip-xxx.xx.x.xxx ~]# /etc/httpd/conf/httpd.conf

<VirtualHost *:80>
  serverName hakmoon.com
  DocumentRoot /home/hakmoon/public_html/wordpress
</VirtualHost>

#### HTTPD 파일 수정 #####
[root@ip-xxx.xx.x.xxx ~]#/etc/httpd/conf.d/ssl.conf
Listen 443 https

#### PHP 파일 수정 ####
설정 변경 필요없으면, 안해도 됨.
크게 문제 없음


#### 웹소스 압축해제 및 경로 이동 ####
[root@ip-xxx.xx.x.xxx ~]#cd /root/
[root@ip-xxx.xx.x.xxx ~]#tar -xvf ${웹 소스}.gz 
[root@ip-xxx.xx.x.xxx ~]#mv ${웹 소스} wordpress
[root@ip-xxx.xx.x.xxx ~]#mv wordpress /home/hakmoon/public_html
[root@ip-xxx.xx.x.xxx /home/hakmoon/public_html#chown 소유자:소유자 wordpress
[root@ip-xxx.xx.x.xxx /home/hakmoon/public_html]#chmod {$이전 서버의 권한 확인} wordpress

 

Wordpress 자세한 설치 방법이 궁금하다면 아래 클릭!

 

웹 소스 이동이 완료되면, RDS 접근을 위해 미리 mysql-client를 설치하자

 

### mysql client 설치 ###
[root@ip-xxx.xx.x.xxx ~]# yum install mariadb.x86_64

 

또한 아파치를 실행하자.

 

[root@ip-xxx.xx.x.xxx ~]# systemctl start httpd

 

우리의 중간 목표는 아래와 같이 사이트를 출력하는 것이 먼저 목표다.

다음 포스트에서 이어 보도록 하자!

 

반응형

+ Recent posts