웹사이트 접속시 브라우저 주소줄에 나타나는 주소를 Domain Name 하나로 고정하는 방법에 대한 예.

웹서버가 APM(Apache, PHP, MySQL) 시스템이라는 것을 전제로 설명을 한다.
기본적으로 웹서버 시스템은 사용자가 Domain Name으로 접속시 웹서버 Root에 있는 index.html 또는 index.php를 참조하여 운영자가 지정한 초기 페이지를 열게 된다.

일반적인 PHP 시스템에서 index.html과 index.php중 우선순위는 index.html이 된다고 알고 있지만 실질적으로 테스트를 해보면 약간 다른 양상이 나타난다.

아래는 주소 고정을 위한 소스이다.  본 소스를 이용하면 브라우져 주소줄에 나타나는 주소를 도메인네임으로 고정이 가능하고 또 브라우저 하단에 보여지는 링크주소 노출을 막을 수 있다.

그러나 단점도 있다.  일반적인 웹 사이트에서는 문제가 없지만, ZB4 또는 XE를 사용하는 사이트에서는 페이지를 보던중에 F5를 누르거나 Reload(새로고침, 다시보기)를 하면 초기 화면으로 되돌아간다는 것이다.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="검색 로봇에 의해 검색되기를 원하는 사이트 주제를 적는다">
<meta name="keywords" content="검색 로봇에 의해 검색되기를 원하는 키워드를 적는다.">
<title>페이지 타이틀 이름을 적는다.</title>


<script language="javascript">
function hidestatus()
{
window.status="주소 고정후 브라우저에 보여질 타이틀을 써넣는다"
return true
}
if (document.layers){
document.captureEvents(Event.mouseover | Event.mouseout)
document.onmouseover=hidestatus
document.onmouseout=hidestatus
}
</script>

<SCRIPT LANGUAGE="JavaScript">
function Frameset(page) {
framecode = "<frameset rows='1*'>"
+ "<frame name=main src="./+ page +">"
+ "</frameset>";

document.write(framecode);
document.close();
}
</script>
<frameset rows="1*">
<frame name="main" src="/xe/?mid=home">     <------ 초기화면으로 열기를 원하는 페이지 경로를 지정한다.
<noframes>
</head>
<body>
</noframes>
</frameset>

</body>
</html>



위 소스를 제대로 활용하기 위한 방법은 아주 간단하다.

1. 위 소스를 index.html과 index.php 파일 2가지로 동일하게 저장한다.(내용은 동일하고 파일의 확장자만 달리한다)
2. 그 다음 실제 초기 페이지로 열고자 하는 파일명은 index.xxx 가 아닌 다른 이름으로 만든다.  예를 들자면.... main.html 또는 main.php 라고 저장한다.
3. 상기 소스의 아래쪽 "초기화면으로 열기를 원하는 페이지 경로를 지정한다."  에서 위2번에서 만든 main.xxx 파일의 경로를 적어주면 된다.
만약 XE를 사용한다면 상기 소스의 예에서 처럼 XE의 mid 주소값을 적어주면 된다.

단, 상기에서 언급한 대로 index.php 보다 index.html이 우선권이 있다고 해서 index.html만 만들게 되면 제대로 동작하지 않는 경향이 나타난다.

결국은 웹 서버 Root에 주소고정용 상기 스크립트가 들어 있는 index.html과 index.php 그리고 초기화면으로 열기를 원하는 파일 또는 초기화면 페이지 경로를 지정하는 파일까지 3개를 넣어주면된다.

(이 기능을 사용하기 위해서는 XE를 웹서버 Root에 막바로 설치하지 말고 반드시 별도의 폴더에 설치해야 한다.)

내 경우는 개인적인 필요에 의해 이러한 방법을 통해 사이트 구성시 7개의 메인 메뉴 페이지를 두고 Root에는 각각의 메인메뉴 페이지 경로를 지정한 파일을 두어 동일한 도메인 네임으로 접속을 하더라도 메인 메뉴 페이지가 random하게 바뀌면서 매번 다른 초기화면이 뜨게하면서 주소고정 스크립트도 사용하고 있다.



P.S : XE 공식 사이트 질문 게시판에서 잘 안된다고 질문하는 분이 있어서 자세한 설명을 별도로 이곳에 적어둔다.
그리고 주소를 고정하기 위한 방법은 위 소스 외에도 많이 있는데, 내가 애용하는 방법의 소스이니 더 좋은 방법이 있는 분들의 댓글을 바랍니다.


+ Recent posts