.htaccess http를 https로 리다이렉트 처리 (.htaccess 사용)
.htaccess(hypertext access) 파일은 사용자가 웹 페이지의 각 파일이나 디렉토리에 접근하기 위한 규칙을 설정하기 위해 사용됩니다.
Apache 웹 서버에서 주로 사용되며 www 최상위 폴더에서 숨겨진 파일의 의미인 ‘ . ‘ 을 붙여 .htaccess
파일로 표시됩니다.
웹사이트에 접속하게 되면 이 .htaccess
파일을 읽어들여 접근한 해당 디렉토리에서 참조할 수 있는 파일이나 접근할 수 있는 방법을 제시 받을 수 있습니다.
HTTPS 프로토콜을 적용한 서버인 경우 기존 주소로 접속했을 때 HTTP가 아닌 HTTPS로 접속 할 수 있도록 설정 하는 것이 좋습니다. (물론 사이트마다 특정 페이지에는 HTTP를 적용하긴 합니다.)
기존 HTTP로 접속시 자동으로 HTTPS 프로토콜로 전환해주며 해당 URL로 이동시켜주는 역할을 바로 이 .htaccess
파일을 수정함으로서 처리할 수 있습니다. .htaccess
파일을 열고 아래 내용을 추가해 주세요.
<ifmodule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://blog.jootc.com/$1 [R,L] </ifmodule> 또는 <ifmodule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] </ifmodule>
이렇게 하면 http://jootc.com
으로 접속 할 경우 https://jootc.com
으로,http://jootc.com/profile
로 접속 할 경우 https://jootc.com/profile
로 이동하게 됩니다.
만약 특정 페이지에서만 해당 규칙을 적용하고 싶지 않다면 RewriteRule ^(.*)$ [사이트 주소]/$1 [R,L]
앞에 RewriteCond
를 한 줄 추가하여 규칙을 지정해주시면 됩니다.
안녕하세요
리디렉트 문제로 검색하다 jootc 블로그를 보게되었는데요
알려주신 .htaccess 안 코드가 저에게는 적용이 안되어서 찾아보다가 아래의 코드로 하니 되더라구요
아마 호스팅 회사별로 조금 차이가 있지 않나 생각도 해 봅니다
그냥 지나갈까 하다가 혹시 inidog 님 블로그 방문하시는 분들이 혹시 안되면 제가 올린 코드도 이용해 보시기 바랍니다
좋은 정보 알려주셔서 감사합니다!!! 🙂
아ㅏㅏㅏㅏㅏ 넘나 감사합니다 ㅠㅠㅠ