이미지 핫링크(이미지 링크 무단 참조) 방지

참고: 인기 테마인 BE 테마(33%)The 7(35%) 할인 행사를 진행하고 있습니다.
참고

이미지 핫링크란?

이미지 핫링크(Image hotlinking)라고 들어본 적이 있나요? 우리 말로 “이미지 링크 무단 도용” 정도로 표현할 수 있을 것 같습니다. “이미지 핫링크”란 사이트 운영자의 허락없이 이미지 링크를 그대로 가져다가 사용하는 것을 의미합니다. 이 경우 이미지를 도용할 뿐 아니라, 그 이미지가 로드될 때마다 원래 사이트의 트래픽으로 이어진다는 점에 매우 바람직하지 않습니다.

제 워드프레스 블로그의 글은 출처만 인용한다면 퍼가는 것을 막지는 않고 있지만, 간혹 글을 통째로 복사하여 참조 언급 없이 그대로 사용하는 경우도 목격합니다. 심지어 이미지 링크까지 그대로 복사해가네요. (혹시 구글 애드센스 코드까지 복사해가는 것은 아닌지 모르겠습니다.)

이미지 링크 무단 복사 방지 – .htaccess 사용

이런 경우 .htaccess를 통해 이미지가 외부 사이트에서 로드되지 않도록 설정할 수 있습니다. 기본적인 코드는 다음과 같습니다.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain2.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://hpmouse.googlepages.com/hotlink.gif [NC,R,L]
// Source: hongkiat.com

위에서 라인 2의 RewriteCond %{HTTP_REFERER} !^$는 Blank Referrer를 허용하는 코드입니다.

라인 3과 라인 4는 이미지를 허용할 사이트를 이와 같은 형식으로 지정하면 됩니다. 자신의 사이트뿐만 아니라 구글과 같은 검색엔지 사이트도 넣어주면 될 것 같습니다. 야후, 구글 등의 검색 엔진을 허용하고자 할 경우 다음과 같은 코드를 추가하면 될 것 같습니다.

RewriteCond %{HTTP_REFERER}  !search\?q=cache               [NC]
RewriteCond %{HTTP_REFERER}  !google\.                      [NC]
RewriteCond %{HTTP_REFERER}  !yahoo\.                       [NC]
// Source: perishablepress.com

마지막 라인은 차단할 파일 포맷과 차단될 경우 표시할 차단 안내 이미지를 설정합니다. http://hpmouse.googlepages.com/hotlink.gif를 이미지가 차단될 때 표시되는 이미지의 경로로 대체하시면 됩니다.

이미지 링크 무단 참조 금지

위와 같은 코드를 작성하는 것에 부담이 된다면 자동으로 htaccess용 코드를 생성해주는 사이트를 이용할 수 있습니다.

참고: 해외 웹호스팅 서비스 Bluehost에서는 cpanel에서 쉽게 이미지 핫링크를 보호하도록 설정하는 기능이 있습니다. 효과를 동일합니다. 다만 .htaccess 파일의 수정을 용이하지 않는 경우 직관적인 UI에서 수월하게 이미지 무단 참조 링크를 금지하도록 설정이 가능합니다. 자세한 내용은 이 글을 참고해보세요.

a2 호스팅에서도 비슷한 기능을 제공합니다. 하지만 a2 호스팅의 경우 A2 optimized wordpress를 설치 시 W3 캐시가 자동으로 설치됩니다. a2 호스팅이 선전하는 속도는 결국 캐시가 적용된 후의 속도이기 때문에 나중에 캐시 플러그인을 설치하면 오류가 나는 문제가 발생하니 주의가 필요합니다.

해외 호스팅을 고려한다면 Bluehost나 고대디가 권장됩니다. 저는 블루호스트 VPSiPage Essential Plan을 사용 중인 데, 둘 모두 대체적으로 만족하고 있습니다. VPS는 조금 고급 사용자와 기업용으로 적합하고 iPage의 Essential Plan은 저가형으로 개인 블로그나 테스트용으로 적합합니다.

최근에 국내 호스팅 업체에서 속도가 8초대가 나왔는데 Bluehost VPS로 이전하니 속도가 2.5초대로 줄었고 캐시 플러그인을 설치하니 1초 미만의 로딩 속도를 보였습니다(참고). 워드프레스 사이트의 속도 문제로 고민하는 경우 우선 캐시를 적용해보고 그래도 문제가 해결되지 않으면 웹호스팅을 옮기는 것을 고려해볼 수 있습니다. 원하는 경우 서비스 요청(유료)을 통해 블로호스트 VPS(중간 레벨 수준의 상품)에서의 테스트를 요청할 수 있습니다. 테스트 후에 이전 여부를 결정할 수 있을 것입니다.

마치며

남의 글을 인용할 때에는 (출처가 불명확하지 않는 한) 출처를 밝혀주는 것이 예의가 아닐까요?  더구나 남의 이미지 링크까지 그대로 복사해 사용하여 트래픽에 부담까지 주는 행위는 지양해야 할 것 같습니다.

현재 이 사이트는 해외 웹호스팅 서비스를 이용하여 트래픽이 어느 정도 여유롭기 때문에 당장은 이미지 링크 무단 참조를 막을 생각은 없지만, 추후에 트래픽이 초과될 경우 이 방법도 고려해야 할 것 같습니다.  그리고 글을 무단으로 퍼가는 문제를 방지하기 위해 글 복사 금지 코드를 넣었지만 사실 별 효과는 없을 것 같고 오히려 사용자의 불편을 가중시키는 부작용이 있는 것 같습니다. 어느 정도 시간이 지난 후에 복사 방지 코드는 해제하는 것도 고려해볼 예정입니다.

이상으로 이미지 링크를 무단으로 복사하여 사이트의 트래픽에 부담을 주는 행위를 방지하기 위한 방법을 살펴보았습니다.

참고:



기부를 통해 이 블로그를 후원하실 수 있습니다.
워드프레스 설치/제작/문제해결이 필요한 경우 서비스(유료)를 요청해주세요.