Apache 리다이렉션 설정
일반적으로 SSL 인증서를 사용할 때 사용중인 가상 호스트가 두 개 이상 있습니다.
대부분 HTTP 요청은 80번 포트에서 제공하고, HTTPS 요청은 443번 포트에서 제공합니다.
사용자를 HTTP에서 HTTPS로 리다이렉션 하려면 먼저 Apache에 mod_rewrite가 활성화되어 있어야 합니다.
* 아래 path는 서버환경마다 다를 수 있습니다.
LoadModule rewrite_module modules/mod_rewrite.so
위와 같이 모듈추가가 되었다면 Apache 웹 서버를 재시작 합니다.
그런 다음 httpd.conf 안에 추가하거나 .htaccess 파일을 사이트 또는 프로젝트 root에 생성합니다.
httpd.conf
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
...
.htaccess
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
'리디렉션한 횟수가 너무 많습니다.' 라고 표시될 때 아래 코드로 대체
RewriteEngine On
RewriteBase /
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
만약 위와 같은 방법으로도 리다이렉션이 안된다면 구글에서 apache http to https 의 키워드로 검색을 추천드립니다.
Apache 웹 서버 설치환경은 운영체제나 버젼에 따라 달라질 수 있습니다.
참고사항
* http to https 설정방법은 인증서 발급과 관련이 없으므로 해당 설정에 대한 부분 모든 책임은 사용자에게 있습니다.
감사합니다.