저는 카페24 호스팅에 제로 보드를 씁니다.
예를 들어 제 홈페이지 도메인이 https://myhome.com 이라고 한다면...
제로보드를 쓰면 http://myhome.com/xe 로 되면서 뒤에 xe가 붙죠.
http주소를 https 주소로 리다이렉트 하는 가장 일반적인 방법은 .htaccess 파일을 수정하는 건데요.
인터넷을 검색해 보니
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
이런 구문을 .htaccess 파일 최상단에 붙여넣으면 http주소가 자동으로 https로 리다이렉트 되더라구요.
문제는 .htaccess 파일까지 접근하게 하려면 사용자가 주소를 http://myhome.com/xe 처럼 뒤에 xe까지 붙여줘야 한다는 겁니다.
근데 보통 사람들은 xe 주소까지 안붙이잖아요?
그래서 어떻게 하면 일반주소를 치고 리다이렉트 하게 할까 고민중인데요.
http://myhome.com 을 주소창에 쓰면 가장 먼저 접근되는 파일이 index.html 파일인거 같은데요.
내용을 살펴보면
<html>
<head>
<title>새해 복많이 받으세요. 2cpu 회원님덜</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<frameset rows="*,0" border=0>
<frame src="http://myhome.com/xe" frameborder=0 scrolling=auto>
</frameset>
<noframes>
<body>
</body>
</noframes>
</html>
index.html 파일에서 http://myhome.com/xe 주소를 불러와서 사용자에게 보게끔 하는 구조인거 같은데요.
이렇게 되면 http://myhome.com로 접속해도 하위 주소로 접속이 되고 사용자의 창에는 xe를 안봐도 되죠.
그렇다면 index.html 파일을 수정하면 https 주소로 변경할수 있겠다는 생각이 들었는데요.
일반적으로 많이 쓰는 납치 태그로 하면...
<meta http-equiv="refresh" content="0;URL=https://myhome.com/xe'" />
이경우는 동작은 잘하는데 주소창에 https://myhome.com/xe 처럼 xe가 남아서 보기 흉합니다.
<meta http-equiv="refresh" content="0;URL=https://myhome.com'" />
이렇게만 쓰면 처음 페이지를 반복 호출하므로 무한 루프에 빠지고요.
그래서 머리를 굴리다 보니 html에 php 함수나 명령어를 불러서 거기서 https 주소로 변경하면 되지 않을까 생각했는데요.
인터넷을 검색해도 잘 나오지 않고 글자 출력하는 예제정도밖에 안나오네요.
제가 문외한이라서 그런데 방법을 아시면 알려 주시면 안될까요?
.htaccess 파일에 있는 아래 명령어들을...
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
index.html에 넣어 동작시킬수는 없을까요?
¸»¾¸ ÇϽŰÍó·³ ÁÖ¼Ò¸¸ ÃÆÀ»¶§ Á¦ÀÏ Ã³À½ Á¢±ÙÇÏ´Â ÆÄÀÏÀÌ
Index.html À̶ó°í Çϼ̴µ¥ ÀÌ°ÍÀº
¼¹ö ¼³Á¤¿¡¼ index.html ¸»°í ´Ù¸¥ °Å·Î ¹Ù²Ü¼ö ÀÖ½À´Ï´Ù
¿¹¸¦µé¸é Index.php ÀÌ·±½ÄÀ¸·Î¿ä
¼¹ö¼³Á¤À» ¹Ù²Ù½Ã°í php¿¡°Å ÇØ°áÇÏ½Ã¸é µÉ°Å °°³×¿ä
html¿¡¼ ÀÚ¹Ù ½ºÅ©¸³Æ®·Î ÇÑÁÙ ³ÖÀ¸´Ï ¹Ù·Î ÇØ°áµÇ¾ú³×¿ä.
<script>
if(window.location.protocol == "http:"){
window.location.protocol = "https:";
}
</script>
ÀÌ·¸°Ô index.html ¸Ç ¾ÕÁÙ¿¡ ³ÖÀ¸´Ï ¹Ù·Î ÇØ°áµÇ¾ú¾î¿ä.
.htaccess ÆÄÀÏ °Çµå¸± ÇÊ¿äµµ ¾ø³×¿ä. ¤¾¤¾
httpÀÇ À妽º´Â htm, httpsÀÇ À妽º´Â php ÀÌ·±½ÄÀ¸·Î ÇÑ´ÙÀ½ htmÆÄÀÏÀÇ ³»¿ë¹°À» xeÂÊÀ¸·Î redirect¶óµµ ½ÃÅ°¸é µË´Ï´Ù