반응형
안녕하세요! 이 글은 AWS 클라우드를 활용하여 1년 무료로 EC2 인스턴스를 생성하고, 도메인을 연결하여 간단한 홈페이지를 구축하는 방법을 안내합니다. 초보자도 따라하기 쉽게 작성했으며, 검색 엔진에 잘 노출될 수 있도록 최적화했습니다.
1. AWS 가입 및 1년 무료 계정 설정
1.1 AWS 회원 가입
- AWS 홈페이지에 접속합니다.
- 회원가입을 진행하고, 신용카드를 등록합니다. (1년 무료로 사용할 수 있지만, 사용량 초과 시 요금이 발생할 수 있으니 주의하세요.)
- 이메일 인증 및 전화번호 인증을 완료합니다.
1.2 AWS Management Console 로그인
- 가입 후 AWS Management Console에 로그인합니다.
- 'EC2' 서비스를 검색하여 EC2 대시보드로 이동합니다.
2. EC2 인스턴스 생성
2.1 무료 티어로 EC2 생성
- "인스턴스 시작" 버튼 클릭.
- 다음 설정을 선택합니다.
- 운영 체제(OS): Amazon Linux 2 (64-bit)
- 인스턴스 유형: t2.micro (무료 티어)
- 키 페어(Key Pair) 생성 및 다운로드:
- SSH로 접속하기 위해 키 페어를 생성합니다.
- 파일(.pem)을 안전한 곳에 저장하세요.
- 보안 그룹(Security Group) 설정:
- HTTP(80)와 SSH(22) 트래픽을 허용합니다.
2.2 EC2 시작
- 설정 완료 후 인스턴스를 시작합니다.
- 대시보드에서 퍼블릭 IPv4 주소를 확인합니다.
3. 도메인 구매 및 연결
3.1 도메인 구매
3.2 Route 53에 도메인 등록
- AWS Management Console에서 Route 53으로 이동.
- "Hosted Zone" 생성 후 구매한 도메인을 입력.
- Route 53에서 제공하는 네임서버 정보를 도메인 구매 사이트에 등록.
4. EC2에 LAMP 스택 설치 (Linux, Apache, MySQL, PHP)
4.1 EC2 접속
- 터미널 또는 푸티(PuTTY)로 EC2에 접속합니다.
ssh -i "키파일.pem" ec2-user@퍼블릭IP
4.2 Apache 설치
- Apache 웹 서버 설치:
sudo yum update -y sudo yum install -y httpd
- Apache 시작 및 부팅 시 자동 실행 설정:
sudo systemctl start httpd sudo systemctl enable httpd
4.3 MySQL 설치
- MySQL 설치:
sudo yum install -y mariadb-server
- MySQL 시작 및 부팅 시 자동 실행 설정:
sudo systemctl start mariadb sudo systemctl enable mariadb
4.4 PHP 설치
- PHP 설치:
sudo yum install -y php php-mysqlnd
- Apache와 PHP 연동:
sudo systemctl restart httpd
5. 간단한 홈페이지 업로드
5.1 기본 HTML 파일 생성
- Apache 기본 디렉토리로 이동:
cd /var/www/html
- HTML 파일 생성:
sudo echo "<h1>환영합니다! 홈페이지가 정상적으로 동작합니다.</h1>" > index.html
5.2 퍼블릭 IP로 테스트
- 브라우저에서 http://퍼블릭IP로 접속하여 HTML 페이지가 표시되는지 확인합니다.
6. 데이터베이스 연동
6.1 MySQL 설정
- MySQL 초기 설정 실행:
- root 비밀번호 설정
- 익명 사용자 제거
- 테스트 데이터베이스 삭제
- sudo mysql_secure_installation
- MySQL에 데이터베이스 및 사용자 생성:
- mysql -u root -p CREATE DATABASE mydb; CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypassword'; GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%'; FLUSH PRIVILEGES;
6.2 PHP로 DB 연동
- PHP 파일 생성:
sudo nano /var/www/html/db_test.php
- 아래 코드를 입력:
<?php $conn = new mysqli('localhost', 'myuser', 'mypassword', 'mydb'); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Database connection successful!"; ?>
- 브라우저에서 http://퍼블릭IP/db_test.php로 접속하여 확인합니다.
7. HTTPS 설정 (선택 사항)
- Certbot으로 무료 SSL 인증서 발급:
sudo yum install -y certbot python3-certbot-apache sudo certbot --apache
- 브라우저에서 https://도메인으로 접속하여 SSL 연결을 확인합니다.
이 과정을 따라하면 AWS 클라우드에서 도메인 연결과 함께 간단한 홈페이지를 구축할 수 있습니다. 추가적으로 HTTPS 보안을 설정하면 더 안전한 환경을 제공할 수 있습니다. 필요한 부분에 대해 질문이 있다면 언제든 말씀해주세요! 😊
반응형