본문 바로가기

취미, 관심/IT.모바일

cafe24 SSL 적용 후 https로 리다이렉트 시키기

어쩌다 보니 회사 사이트를 관리하게 되었다. 내 분야도 아닌데..

 

회사 사이트에는 그 흔한 SSL적용도 되어있지 않은 터라, SSL적용부터 했어야 했다.

 

일단 비용이 들지 않는 let's encrypt를 사용해서 적용했다.

 

적용법은 Sway님 블로그 참고 [링크]

 

https 무료 ssl 적용 - cafe24

http를 https로 바꾸기 위해 ssl을 활용하는 방법은 여러가지가 있다. 첫째로 유료 인증서를 구입을 하는 것이다.세세하게 설정하는 부분은 각 사이트마다 다 있다. 안되면 문의를 해보면 된다. 두번째로 무료로..

sway.tistory.com

 

3개월마다 갱신해줘야 하는 단점이 있지만, 그래도 무료가 어딘가. 서버호스팅을 사용하면 자동갱신도 가능한데.. 일단 회사에서는 일반 호스팅만을 이용하고 있으니..

 

SSL 적용이 정삭적으로 완료되었다면, http로 연결되는 모든 페이지를 https로 redirect 시켜줘야 한다.

 

온라인에 돌아다니는 팁들을 적용시켜봤는데, 주소 뒤에 갑자기 /www/www/www... 식으로 붙는다던지, 접속이 불가능한 상황이 되었는데, 아래 문구를 넣으니 적용이 되었다.

 

나중에 또 쓸 것 같으니 포스팅 해 둔다.

 

cafe24 ftp로 접속을 해서 루트로 올라가보면 .htaccess 파일이 있다. 텍스트에디터로 열어준다.

 

최상위에 아래 내용을 붙여넣는다.

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>

저장하면 끝.

 

맨 마지막줄이 변경되는 규칙인데,  앞쪽 {HTTP_HOST} 만 넣으면 메인페이지에 접속할때만 변경되므로 꼭 뒤의 {REQUEST_URI}를 넣어줘야 한다고 한다.

 

*추가

cafe24에서 제대로 작동하지 않는 경우 아래의 방법으로 처리하면 된다고 한다.

회사 호스팅 역시 cafe24이지만, 위 방법으로 제대로 작동됨을 확인했다.

 

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{ENV:HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# [R, L] 플래그를 사용하게 되면 기본적으로 302 리디렉션으로 하는 것 같습니다.

SEO 최적화 등을 위해 301 리디렉션으로 지정해줍시다.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{ENV:HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>