AWS 무료 서비스 가입과 서버(EC2) 만들기

2. AWS 무료 서비스(Free Tier) 가입과 서버(EC2) 만들기

2.1. EC2에 접속하는 방법

* EC2에 접속한 후, 서버를 다루기 위해서는 리눅스 운영체제를 다룰줄 알아야 합니다.
- 이 부분은 별도 컨텐츠로 설명하오니, 리눅스 운영체제를 모를 경우에는 다음 웹서버 설치 전, 별도 컨텐츠로 리눅스를 익힌 후에 설정하는 것을 권장합니다.

2.2. EC2 서버에 웹서버 설치

  • sudo apt-get update -y
  • sudo apt-get install apache2
  • sudo a2enmod rewrite
  • sudo service apache2 restart
  • sudo apt-get install mysql-server mysql-client mysql-common
  • sudo add-apt-repository ppa:ondrej/php
  • sudo apt-get update
  • sudo apt-get install php7.1 php7.1-common
  • sudo apt-get install php7.1-mysql php7.1-curl php7.1-xml php7.1-zip php7.1-gd php7.1-mbstring php7.1-mcrypt
- sudo sh -c 'echo "<?php phpinfo(); ?>" > /var/www/html/info.php'

http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/install-LAMP.html

  • sudo service apache2 restart
    • 현재 아파치 실행 상태 확인 명령: sudo service apache2 status

2.4. FTP 접속 및 웹페이지 업로드

2.5. html 파일에서도 PHP 가 동작하도록 설정하기

  • x-httpd-php 를 확장자가 html 인 경우에도 지원토록 만들어야 함
  • 해당 파일은 /etc/apache2/mods-available/php7.1.conf 에 있음
    • 필요시 다음과 같이 파일 내의 문자열을 /etc/apache2 폴더에서 실행하여, 해당 설정이 들어 있는 파일을 찾을 수 있음
cd /etc/apache2
find . -type f -print | xargs grep -i "x-httpd-php" /dev/null
  • 다음과 같이 코드 추가
<FilesMatch ".+\.ph(ar|p|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch ".+\.html$">
    SetHandler application/x-httpd-php
</FilesMatch>

2.6. FileZilla(SFTP 이용) 이외에 SSH 프로토콜(22번 포트)을 활용해서 서버로 파일 복사 또다른 방법 (네트워크 복사)

  • OSX
    • scp 명령어 이용
    • scp -i [pem] [file_to_be_copied] ubuntu@[server_ip]:[path]
    • e.g) scp -i Downloads/dss_server.pem Desktop/dss/week6/primer-dataset.json ubuntu@ec2-54-191-110-146.us-west-2.compute.amazonaws.com:/home/ubuntu
  • Widnows