아래 1번 방법은 리퍼러 정보를 이용해 설정해 놓은 도메인이 아니면 파일을 차단 시키는 방법으로

 

파일 자체에 리퍼러 값이 없으면 사용 할 수 없다.

 

예로 avi파일의 경우 아래 소스에 확장자를 넣더라도 avi파일 자체에 리퍼러 정보가 없어 막히지 않는다.

 

이럴 경우 쿠키값을 이용한 방법이 있다.

 

1. 아래의 소스를 자신의 사이트 접속시 꼭 접근하게 되는 파일의 최상단에 삽입한다.

    붉은 글씨는 자신의 도메인으로 수정

 

<?
setcookie("link","ok",0,"/","test.com");
?>

 

 

2. 아래의 소스를 .htaccess 파일에 삽입한다.

    붉은 글씨 부분이 차단될 확장자 명들로 추가나 삭제 하면 된다

 

SetEnvIf Cookie link=ok true
<FilesMatch ".(mid|asf|wma|wmv|mp3|ogg|wav|mpg|mpeg|avi|swf|zip|rar|exe)$">
Order Deny,Allow
Allow from env=true
Deny from all
</FilesMatch>

 

 

대충 원리를 설명하자면 1번의 소스로 홈페이지 접속시 link에 ok 값을 넣은 쿠키를 생성시켜 사용자의 피씨에 저장한다.

2번 소스에서 link의 쿠키값이 ok인지 확인 후 맞으면 설정해 놓은 파일들을 정상 작동(?)시키고,

쿠키값이 없거나 다를경우 막는다.

 

 

이 소스는 현재 이 사이트에는 별로 필요가 없어 적용시키지 않았으나..

예전에 다른사람이 필요한 경우가 있어 적용 시켰던 적이 있다.

 

단점으로는 적용된 사이트를 열었던 익스플로러에서 링크가된 다른 사이트를 열면 쿠키값이 그대로 존재해서 열릴 수는 있으나..

무단링크를 한 사이트의 방문자가 다시 소스 적용한 사이트를 같이 열어 놓을 경우는 확률적으로 엄청 낮기 때문에 효과는 충분하다고 생각한다.