내 사이트의 컨텐츠를 iframe으로 뽀려가는놈 --;
제 사이트 컨텐츠를 아이프레임으로 지꺼인냥 특정부분만 열어서 쓰는인간이 있습니다
이거어떻게 해결법없을까요..
상위 페이지 주소받아서 다르면 체크할랬더니
도메인이 다르니 상위 부모페이지 주소도 못받아오고..
익스에선 사용권한 없다고 아예 null 값도 출력안해줍니다..
어떻게해야할까요
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기
댓글 12개
이렇게 막으면 되지만 제 사이트내에서 저도 iframe으로 제 사이트를 불러오는게 있어서
그것도 같이 작동해버려서...
특정 도메인은 제외하고싶은데 부모창 도메인 다르면은 체크도안되고 돌겠네요
이렇게 안될까요? 정규식 연산은 제가 잘 몰라서.
strpos나 뭐 그런 함수로도 될거 같구요.
$_SERVER['HTTP_REFERER'] 나를 어디서 호출 했는지 알 수 있으니 이걸로 비교해서 하면 될거 같은데요.
$_SERVER 함수는 현재 페이지의 서버내용에서 출력해주는건데
a.com 에서 b.com/c.php 를 열었다면 c.php 에선 무조건 b.com 서버만나옵니다..
echo $_SERVER['HTTP_REFERER'] ;
?>
한번 페이지 상단에 써서 확인해보세요.
도메인이 다르니 상위 부모페이지 주소도 못받아오고..
익스에선 사용권한 없다고 아예 null 값도 출력안해줍니다..
try catch를 이용해서 에러 나면 localtion.href='http://www.warning.or.kr/'; 를 넣으시면 됩니다.
try {
if(parent) {
domain = parent.location.href;
if(domain) {
..................
}
}
} catch(e) {
localtion.href='http://www.warning.or.kr/';
}
보통은 윗글처럼 php소스에서 referer 를 체크하면 되고, 좀더 편하게 할려면 .htaccess를 수정하시면 됩니다.
iframe으로 긁어가는건 이렇게 막을수 있는데, socket으로 긁어가는건 못 막습니다.
}
사이트 전체를 원래 사이트로 돌려버리더라구요...
차단이 쉽게 처리되겠는걸요;;
어차피 파싱해서 하는게 아니라 그대로 가져다 쓰는것이기에...
javascript로 parent 체크해서 try catch 로 구분해서 처리해야합니다.