본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

문학 아카이브 사이트에 HTTPS(SSL 인증서) 설정

by easyfly 2025. 8. 2.
반응형

📌 문학 아카이브 사이트에 HTTPS(SSL 인증서) 설정하기

문학 아카이브 사이트 LiterArchive는 Django와 Nginx 조합으로 운영되는 웹 기반 플랫폼입니다. 이번 글에서는 Google Cloud Platform(GCP)에 배포된 이 사이트에 Let's Encrypt 무료 SSL 인증서를 설치하고 HTTPS 보안을 적용한 과정을 정리해 보았습니다.


✅ 1. 왜 HTTPS가 필요한가요?

  • 🔒 보안 강화
    사용자와 서버 간 데이터 전송을 암호화하여 정보 유출을 방지합니다.
  • 🌐 신뢰성 향상
    브라우저 주소창에 자물쇠 아이콘이 표시되어 사용자에게 안전한 사이트로 인식됩니다.
  • 🔍 검색엔진 최적화(SEO)
    HTTPS 사이트는 검색엔진에서 우선적으로 노출되는 경향이 있습니다.
  • 📢 광고 승인 요건
    구글 애드센스 등 광고 플랫폼은 HTTPS 적용을 필수로 요구합니다.

🧱 2. 기본 환경

  • 서버: GCP VM 인스턴스 (Debian 12 기반)
  • 웹 프레임워크: Django 5.x
  • 웹 서버: Nginx
  • 도메인: literarchive.example
  • 인증서 발급 툴: Let's Encrypt + Certbot

⚙️ 3. Certbot 설치

sudo apt update
sudo apt install certbot python3-certbot-nginx

🔧 4. Nginx 설정

/etc/nginx/sites-available/literarchive 파일을 아래와 같이 설정합니다:

server {
    listen 80;
    server_name literarchive.example www.literarchive.example;

    location / {
        include proxy_params;
        proxy_pass http://unix:/home/user/literarchive/litweb.sock;
    }

    location /static/ {
        alias /home/user/literarchive/static/;
    }

    location /media/ {
        alias /home/user/literarchive/media/;
    }
}
sudo ln -s /etc/nginx/sites-available/literarchive /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

🌐 5. SSL 인증서 발급

Certbot으로 SSL 인증서를 신청하고 적용합니다:

sudo certbot --nginx -d literarchive.example -d www.literarchive.example

설치 중 이메일 입력, 이용 약관 동의, HTTP → HTTPS 리디렉션 설정을 묻는 과정이 포함됩니다.


🔄 6. 자동 갱신 테스트

Let's Encrypt 인증서는 90일간 유효합니다. 다음 명령어로 자동 갱신이 잘 작동하는지 확인할 수 있습니다:

sudo certbot renew --dry-run

자동 갱신은 시스템 크론탭에 등록되므로 일반적으로 추가 작업은 필요하지 않습니다.


✅ 7. 적용 결과 확인

  • 🔒 https://literarchive.example 접속 시 자물쇠 아이콘 확인
  • 🧾 ads.txt 파일 정상 노출 및 광고 플랫폼 인증 준비 완료
  • 🛠 Django 페이지 및 정적 파일 서비스 문제없이 작동

✍️ 마무리하며

무료로 제공되는 Let's Encrypt와 Certbot 덕분에 웹사이트에 HTTPS를 적용하는 일은 이제 복잡하지 않습니다.
LiterArchive는 이번 HTTPS 적용을 계기로 더 많은 사용자들이 신뢰할 수 있는 문학 플랫폼으로 발전해 나가겠습니다.

참고 링크: https://letsencrypt.org

 

반응형

댓글