아시는 분들 많겠지만, 접속 주소의 www 유무에 따라서 페이지 이동시 로그인이 풀리는 경우가 있곤 합니다.

(www 없는 주소로 접속해서 로그인을 한 후, www 있는 페이지로 접속하면 로그인이 풀리는 현상 - 반대의 경우도 마찬가지)

그러던중 SCM 로그관리를 검색하다가 새로운 문제 하나를 알게되었는데요. (사실은 문제랄 것 까지는 없지만...)

저는 주로 게시물들의 RSS 전문 공개를 해두는 편이랍니다. 그래서 구글이나 야후 등에서 게시물이 검색될 수 있도록 말이죠.

그런데 문제는 게시물이 검색될 때의 링크 주소가 항상 www 붙은 형태는 아니라는 것입니다. 이게 왜 문제인지 예를 들어보면요.

만일 누군가 검색을 하다가 제 사이트의 게시물이 검색 되어서 읽어보려고 클릭하면 바로 그 글이 떠야하지 않겠습니까?

그런데 만일 검색된 링크의 주소에 www 가 없다면 자동으로 www 를 붙이면서 그 글이 아닌 메인페이지로 접속이 되어버립니다.

그럼 그 누군가는 순간 당황스러울 수밖에 있겠죠. 정작 보려던 글은 나오지 않고, 사이트 메인페이지가 나타났으니 말입니다.

그 글을 보려면, 메인화면에서 다시 그 글을 찾기위해 검색을 해야한다는 말인데... 이렇게 할 사람은 거의 없겠죠.


그래서 SCM 로그관리를 살펴보니, 검색로봇이 긁어간 주소들 중에 www 없이 링크되어 있는 곳이 꽤 많더군요.

왜 그런지 잘 모르겠네요. 어떤 게시물은 www 와 함께 링크되어 있고, 어떤 것은 www 없이 링크되어 있었습니다.

여하튼 이래선 안되겠다 싶어 일단 다시 똑띠님의 팁을 해제하고 다른 방법들을 알아봤는데요.

물론 가장 좋은 건 회원분들께서 '로그인 유지' 기능을 사용하시는거죠. 그러면 www 유무에 관계없이 늘 로그인이 유지되니까요.

그런데 신규회원의 경우나 그 기능을 이용하지 않으시는 분들은 여전히 www 없이 접속하셨다가 로그인 풀림으로 문제를 겪곤 하셨죠.


그래서 인터넷을 한참을 돌아다니다가 결국 한 가지 팁을 찾아서 적용시켜보았더니 문제가 해결되었습니다.


방법은 간단합니다. 레이아웃 편집에서 아래 스크립트를 적당한 곳에 붙여주기만 하면 됩니다.

적당한 곳이 애매하신 분은 로그인창에 보이는 '편집' 누르신 후 레이아웃 편집창 가장 상단에 붙여주시면 되겠습니다. ^^


<script language="JavaScript" type="text/javascript">
var host = location.host.toLowerCase();
var currentAddress = location.href;
if (host.indexOf("www") == -1)
{
currentAddress = currentAddress.replace("//","//www.");
location.href = currentAddress;
}
</script>


위 스크립트가 삽입된 레이아웃은 www 없이 접속을 해도 자동으로 www 로 변경이 됩니다.

물론 서브 메뉴의 주소에도 www 가 자동으로 붙으면서 검색사이트 링크에 www 없는 경우에도 제 페이지를 보여줍니다.


물론 고수님들 보시기엔 정말 하찮은 팁일지도 모르겠고, 더 좋은 방법이 있을지도 모르겠으나 저같은 초보에겐 참 기쁜일이었답니다.

혹시 저처럼 www 유무로 인한 로그인풀림 문제로 고민하시는 분이 계시다면 위 글이 도움이 될 수 있기를 바랍니다. ^^
by Anna 안나 2008. 4. 5. 23:20