亞波治

서버단에서 이미지 Hotlink 방지....

· 2018-11-17 (토) 19:26:32 · 2301 · 6

자게에 질문이 올라와서 몇자 적어 봅니다.....^^

 

사이트를 운영하다 보면 자신이 힘들게 업로드한 이미지들을 긁어가서

얌체 처럼 자신의 사이트에서 링크를 걸어 이미지를 보여주는 경우들이 있습니다.

 

서버단에서 이를 방지 하는 팁을 작성해 보겠습니다.

아파치 와 리눅스에 적용하는 방법이 달라 두가지로 분류 했습니다.

 

아파치인 경우에는 httpd-vhosts.conf 파일에 아래와 같이 적용 시키면 됩니다.

<VirtualHost *:80> 
        ServerAdmin [email protected] 
        ServerName www.domain.com 
        DocumentRoot /home/domain 
        SetEnvIFNoCase Referer "www.domain.com" link_allow 
        <FilesMatch "\.(gif|jpg|jpeg|png|bmp)$"> 
          Order allow,deny 
          allow from env=link_allow 
          #deny from all 
        </FilesMatch> 
</VirtualHost> 

 

Nginx 경우에는 /etc/nginx/nginx.conf 파일에 아래와 같이 추가 적용하면 됩니다.
    location ~ \.(gif|jpg|jpeg|png|bmp)$ {
         valid_referers none blocked domain.com *.domain.com;
         if ($invalid_referer) {
            return   403;
        }
    }

그외에도 다른 방법이 있지만 위의 두가지만으로도 충분히 역활을 하므로 생략 하도록 하겠습니다....^^

|

댓글 6개

아파치와 Nginx 모두 팁을 올려주셔서 감사합니다 ^^
좋은 주말 되세요~!

p.s.
무단 링크시에 특정 이미지를 띄우고 싶으시다면
1) 아파치 님께서 설명하신 부분의 3~5행을 다음과 같이 수정하시고
if ($invalid_referer) {
rewrite (.*)$ /path/403error.jpg redirect;
}

2) 하단에 다음과 같은 부분을 추가하시면 됩니다.
location = /path/403error.jpg {
}
2018-11-17 (토) 20:31:56
이미지는 막아두는게 좋긴하죠
좋은 정보네요 ^^
우와 이런것도 핸들링 되는지 몰랐네요
^^
감사합니다
2018-11-18 (일) 01:49:36
감사합니다
그 아까 질문했다시피 구글봇등도 허용하고 싶습니다
혹시 어떻게 하는지 추가해주실수 있으신지 궁금합니다.
2018-11-20 (화) 08:37:07
유용한 정보 감사합니다.
댓글을 작성하시려면 로그인이 필요합니다.

서버관리자

658건

서버관리자 모임 게시판 입니다.

+
제목 글쓴이 날짜 조회
19-01-03 조회 1,840
19-01-03 조회 3,328
19-01-03 조회 2,556
19-01-02 조회 2,612
19-01-02 조회 2,052
19-01-02 조회 2,356
19-01-02 조회 1,633
19-01-01 조회 1,901
18-12-29 조회 2,236
18-12-28 조회 2,307
18-12-26 조회 1,924
18-12-22 조회 2,209
18-12-19 조회 2,992
18-12-17 조회 3,201
18-12-13 조회 1,882
18-12-11 조회 2,221
18-12-07 조회 3,317
18-12-06 조회 2,193
18-12-03 조회 1,864
18-11-30 조회 2,057
18-11-27 조회 2,192
18-11-26 조회 2,481
18-11-23 조회 2,192
18-11-20 조회 1,819
18-11-19 조회 1,816
18-11-17 조회 2,302
18-11-01 조회 2,789
18-10-31 조회 2,236
18-09-27 조회 2,128
18-09-27 조회 3,307