내 사이트의 컨텐츠를 iframe으로 뽀려가는놈 --; > 토크

토크

개발과 관련된 어떤 얘기도 괜찮습니다.

내 사이트의 컨텐츠를 iframe으로 뽀려가는놈 --; 정보

개발자 내 사이트의 컨텐츠를 iframe으로 뽀려가는놈 --;

본문

제 사이트 컨텐츠를 아이프레임으로 지꺼인냥 특정부분만 열어서 쓰는인간이 있습니다

그쪽에 연락해봐도 묵묵부답이고
이거어떻게 해결법없을까요..
상위 페이지 주소받아서 다르면 체크할랬더니
도메인이 다르니 상위 부모페이지 주소도 못받아오고..
익스에선 사용권한 없다고 아예 null 값도 출력안해줍니다..

어떻게해야할까요
추천
0
비추천
0
  • 복사

댓글 12개

if (top.frames.length!=0 || window!=top) window.open(location, "_top") ;

이렇게 막으면 되지만 제 사이트내에서 저도 iframe으로 제 사이트를 불러오는게 있어서
그것도 같이 작동해버려서...
특정 도메인은 제외하고싶은데 부모창 도메인 다르면은 체크도안되고 돌겠네요
if(!eregi("mydomain\.com", $_SERVER['HTTP_REFERER'])) { exit; }
이렇게 안될까요? 정규식 연산은 제가 잘 몰라서.
strpos나 뭐 그런 함수로도 될거 같구요.
$_SERVER['HTTP_REFERER'] 나를 어디서 호출 했는지 알 수 있으니 이걸로 비교해서 하면 될거 같은데요.
댓글감사합니다

$_SERVER 함수는 현재 페이지의 서버내용에서 출력해주는건데

a.com 에서 b.com/c.php 를 열었다면 c.php 에선 무조건 b.com 서버만나옵니다..
상위 페이지 주소받아서 다르면 체크할랬더니
도메인이 다르니 상위 부모페이지 주소도 못받아오고..
익스에선 사용권한 없다고 아예 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으로 긁어가는건 못 막습니다.
자신의 도메인 체크해서 타 도메인일경우에 또는 변수값 등 이런 다양한 방법을 이용하시면
차단이 쉽게 처리되겠는걸요;;

어차피 파싱해서 하는게 아니라 그대로 가져다 쓰는것이기에...
HTTP_REFERER로 차단할경우 검색엔진에서 컨텐츠 클릭하고 들어 올 경우에도 다른 도메인이기 때문에 차단됩니다.
javascript로 parent 체크해서 try catch 로 구분해서 처리해야합니다.
© SIRSOFT
현재 페이지 제일 처음으로