저는 카페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라도 시키면 됩니다