웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
홈페이지index경로 이외의 하위 경로 차단 하는 방법 [펌]
2005.02.05 16:53
질문:홈페이지index경로 이외의 하위 경로 차단 하는 방법..
ddini님
대답:자바스크립트로 리퍼러를 체크하면 될거 같네요.
http://myhome.naver.com/ddini/kin/ref2.htm 아래의 사이트가 리퍼러가 체크되는 스크립트 입니다.
http://myhome.naver.com/ddini 라는 제 홈페이지를 통해서만 억세스가 가능합니다.
위의 주소로 가기위해서는
http://myhome.naver.com/ddini/kin/ref.htm 을 통해서만 들어 갈 수 있을겁니다.
ref2.htm 소스
<body>
<a href=ref2.htm>이동</a>
<script>
document.body.onload=function(){
if(String(document.referrer).indexOf('http://myhome.naver.com')==-1){
alert('정상적인 접근이 아닙니다');
location.replace("about:blank") //빈페이지로 바꿈
return; //함수실행 중단
}
document.write(document.referrer+"<br>");
document.write(document.domain+"<br>");
}
</script>
---------------------------------------
지식인에서 찾은 겁니다
인덱스를 경유하지않고 주소창에서 무작위 페이지 엑세스를 차단하고싶을때
쓰시면 됩니다 그런데 한가지 문제는
ref2.htm 페이지에 소스중 일부 구문이 나온다는겁니다
http://myhome.naver.com/ddini/kin/ref.htm
myhome.naver.com
이렇게요
차단하려는모든페이지에 스크립트를 넣어준다고할때 저구문이 페이지마다 표시되서는 안되겠죠
이것을 해결할려면 어떻게 하면 될까요
팁인지 질문인지 .... 하여튼 필요하신분들은 쓰십시요
* 드림팀님에 의해서 게시물 이동되었습니다 (2005-02-06 13:48)
* TheMics님에 의해서 게시물 이동되었습니다 (2005-02-07 15:14)
ddini님
대답:자바스크립트로 리퍼러를 체크하면 될거 같네요.
http://myhome.naver.com/ddini/kin/ref2.htm 아래의 사이트가 리퍼러가 체크되는 스크립트 입니다.
http://myhome.naver.com/ddini 라는 제 홈페이지를 통해서만 억세스가 가능합니다.
위의 주소로 가기위해서는
http://myhome.naver.com/ddini/kin/ref.htm 을 통해서만 들어 갈 수 있을겁니다.
ref2.htm 소스
<body>
<a href=ref2.htm>이동</a>
<script>
document.body.onload=function(){
if(String(document.referrer).indexOf('http://myhome.naver.com')==-1){
alert('정상적인 접근이 아닙니다');
location.replace("about:blank") //빈페이지로 바꿈
return; //함수실행 중단
}
document.write(document.referrer+"<br>");
document.write(document.domain+"<br>");
}
</script>
---------------------------------------
지식인에서 찾은 겁니다
인덱스를 경유하지않고 주소창에서 무작위 페이지 엑세스를 차단하고싶을때
쓰시면 됩니다 그런데 한가지 문제는
ref2.htm 페이지에 소스중 일부 구문이 나온다는겁니다
http://myhome.naver.com/ddini/kin/ref.htm
myhome.naver.com
이렇게요
차단하려는모든페이지에 스크립트를 넣어준다고할때 저구문이 페이지마다 표시되서는 안되겠죠
이것을 해결할려면 어떻게 하면 될까요
팁인지 질문인지 .... 하여튼 필요하신분들은 쓰십시요
* 드림팀님에 의해서 게시물 이동되었습니다 (2005-02-06 13:48)
* TheMics님에 의해서 게시물 이동되었습니다 (2005-02-07 15:14)
댓글 10
-
Lk
2005.02.05 17:30
자바스크립트말고 $HTTP_REFERER 를 쓰는 방법도 있습니다 참고 ^^; -
토토루
2005.02.05 19:57
간단하지 않을까요... 레퍼럴이 존재하지 않으면 에러...^^;
<?php if($_SERVER['HTTP_REFERER'] == '') exit("잘못된 접근!!");?> -
카멜롯™
2005.02.05 20:01
아래 두개 라인을 주석 또는 삭제 처리 하면...
http://myhome.naver.com/ddini/kin/ref.htm
myhome.naver.com
이 두 라인이 안나옴니다.
<script>
document.body.onload=function(){
if(String(document.referrer).indexOf('http://myhome.naver.com')==-1){
alert('정상적인 접근이 아닙니다');
location.replace("about:blank") //빈페이지로 바꿈
return; //함수실행 중단
}
// document.write(document.referrer+"<br>");
// document.write(document.domain+"<br>");
}
</script> -
카멜롯™
2005.02.05 20:19
제로보드 파일만 봐도 간단히 알 수 있죠.
// 이전 경로에 도메인이 포함되어 있는지 검사..,,
if(!eregi($HTTP_HOST,$HTTP_REFERER)) Error("정상적으로 작성하여 주시기 바랍니다.");
// 특정 파일..,, member_join.php 파일 에서만 접근 허가..,,
if(!eregi("member_join.php",$HTTP_REFERER)) Error("정상적으로 작성하여 주시기 바랍니다","");
// get 방식으론 접근 불가..,, post 만 가능..,,
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");
위 Error("내용"); 부분만 echo "<script>alert('뭐냥');location.href='http://xxx.com';</script>"; exit; 이런식으로 처리해도 되고..,,
또는..,,
function goBack($msg='', $url='') {
echo "<script>";
if($msg) echo 'alert("'.$msg.'");';
if($url) echo 'location.replace("'.$url.'");';
else echo 'history.go(-1);';
echo "</script>";
}
if(!$_SERVER["HTTP_REFERER"] || !ereg(str_replace(".","\.",$_SERVER["HTTP_HOST"]), $_SERVER["HTTP_REFERER"])) {
goBack("정상적인 방법으로 접근하세요. \n\n반드시 메인을 통해서 들어오시기 바람니다.", "http://$_SERVER[HTTP_HOST]");
exit;
} -
카멜롯™
2005.02.05 20:27
제가 쓰는 스크립트 함수는..,,
근데 이 글은 웹스터디로 게시물 이동을 해야 할거 같은데요..^^;
// 무단 링크시 이동 페이지
var home="http://oxtag.com/babobabo.html";
// 허용할 도메인..
var link1="http://oxtag.com";
var link2="http://www.oxtag.com";
var link3="http://tagpia.maru.net";
var link4="http://www.tagpia.maru.net";
var link5="http://211.200.84.45:8888";
var link6="http://www.211.200.84.45:8888";
if (document.referrer.indexOf(home)==-1 &&
document.referrer.indexOf(link1)==-1 &&
document.referrer.indexOf(link2)==-1 &&
document.referrer.indexOf(link3)==-1 &&
document.referrer.indexOf(link4)==-1 &&
document.referrer.indexOf(link5)==-1 &&
document.referrer.indexOf(link6)==-1) {
if (document.referrer) {
alert("무단링크된 주소로 연결을 시도하였습니다.");
window.location=home;
} else {
alert("반드시 홈페이지를 통해서 연결되어야 합니다.");
window.location=home;
}
} -
프란시스
2005.02.05 20:53
카멜롯님 또 감사드립니다.
어쩌면 그리 실력이 좋으신지..ㅎㅎ
토토루님 꺼도 잘됩니다
여기는 고수님들이 너무많아 저같은 사람은 참 도움이 많이됩니다
모두들 감사드려요 -
꺾쇠
2005.02.05 23:09
위 소스를 페이지마다 다 넣어줘야 하나요? -
프란시스
2005.02.06 01:44
페이지마다 전부넣어야될걸요
<?php if($_SERVER['HTTP_REFERER'] == '') exit("잘못된 접근!!");?> 이걸로 한줄넣어줘도
간단하게 잘됩니다 -
잠수부
2005.02.17 11:34
프란시스 // 위 소스처럼 했을경우엔 다른 페이지를 경유해서 접속시에도 오류가 없습니다. -
소성단
2005.03.13 16:53
초보자를 위해서 구체적으로 좀 더 상세히..
어느파일의 어느위치에 적용해야한다던지..
어떤파일하나 만들어야한다던지..가르쳐주시면 안될까요?
부탁드립니다^^
제목 | 글쓴이 | 날짜 |
---|---|---|
1.2.0 설치 후 페이지모듈에 위젯사용시 문제 [2] | Digitalife | 2009.03.17 |
관리자 페이지 (module=admin) 백지 문제 [5] | 개돌 | 2009.03.17 |
외부페이지 또는 파일링크시 글자깨짐 현상 [1] | 소백산 | 2009.01.31 |
페이지 모듈에도 게시판제목 처럼 다는 쉬운방법... [2] | 만쓰별(정만) | 2009.01.23 |
1.1.5 이후 버전 업데이트후 외부페이지에서 다음위젯이 표시안될때~ [3] | 정박사닷컴 | 2009.01.23 |
메인 페이지가 백지로 나올 때 이렇게 해보세요. [4] | 시금치 | 2008.12.23 |
자신의 홈페이지에 플래시 오락실을 등록 해보자. [2] | 조성우371 | 2008.12.20 |
서브홈페이지 만들기 [5] | 가리사니 | 2008.12.09 |
홈페이지의 아이콘(favicon)이 어느날 갑자기 사라졌을때... [1] | 크르르 | 2008.11.28 |
[설문조사] 메인페이지에 넣기와 효율적으로 관리하기 [6] | 빨간발 | 2008.11.27 |
일반 페이지에 로그인(세션) 정보 활용하기 [13] | noirzo | 2008.11.07 |
cafe24사용자중 페이지에서 위젯편집시 자바스크립트 에러나시는 분들 [8] | 팔공산 | 2008.10.17 |
주소록 구현 (외부 페이지) [17] | CSLab | 2008.09.15 |
블로그, 홈페이지 가입시 자동 입력되는 http:// 없애기 [2] | 류영무 | 2008.09.09 |
동일서버내 페이지에서 로그인정보 활용하기... [4] | 수로 | 2008.09.06 |
[우클릭 및 드레그 방지법] 및 [방지된 홈페이지 해재법] >0< [7] | 이홍석295 | 2008.09.03 |
각 리스트형 위젯에 페이지 기능을 달자. [10] | 라르게덴 | 2008.09.02 |
밑에 페이지 네비게이션 수정 (다음10개, 이전10개등으로) [6] | Clanss | 2008.08.29 |
한 페이지(화면)에 두개(2개)의 모듈(게시판 등)을 넣는 법 [6] | 황건순 | 2008.08.25 |
[팁]페이지별 댓글 출력 초간단 팁.. [4] | 키티나 | 2008.07.04 |