Nginx에서 HTTP를 HTTPS로 리다이렉트하는 방법: 모범 사례
Nginx에서 모든 HTTP 트래픽을 HTTPS로 자동 리다이렉트하여 모든 방문자에게 안전한 연결을 보장하는 가장 효과적인 방법을 알아보세요.
Nginx에서 HTTP를 HTTPS로 리다이렉트하는 방법: 모범 사례
웹사이트의 보안을 강화하려면 모든 트래픽을 HTTPS로 강제하는 것이 필수적입니다. Nginx에서 이를 수행하는 가장 권장되는 방법은 다음과 같습니다.
1. 표준 리다이렉트 설정
가장 일반적이고 효율적인 방법은 HTTP(포트 80)용 서버 블록을 별도로 생성하여 모든 요청을 HTTPS(포트 443)로 반환하는 것입니다.
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
2. 왜 301 리다이렉트를 사용해야 하나요?
301 Moved Permanently 상태 코드를 사용하면 검색 엔진(Google 등)에 해당 페이지가 영구적으로 이동했음을 알릴 수 있습니다. 이는 SEO 순위를 HTTPS 버전으로 이전하는 데 매우 중요합니다.
3. HSTS(HTTP Strict Transport Security) 추가
보안을 한층 더 강화하려면 HTTPS 서버 블록에 HSTS 헤더를 추가하세요. 이는 브라우저가 향후 모든 연결을 HTTPS로만 시도하도록 강제합니다.
server {
listen 443 ssl;
server_name example.com;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
# 기타 SSL 설정...
}
이 설정을 적용한 후에는 반드시 nginx -t 명령어를 통해 설정 파일에 오류가 없는지 확인하고, systemctl reload nginx를 통해 설정을 반영하세요.