라이트세일 워드프레스 웹사이트 이미지 무단 도용(핫링크) 방지하는 방법
아마존 라이트세일 워드프레스 설치형 블로그를 운영중에 있습니다.
내가 등록한 블로그 글의 이미지를 누군가가 이미지 링크를 통하여 다른 사이트나 개인 블로그에 그대로 가져다 사용하는 경우
트래픽 관리에 구멍이 생깁니다.
나의 블로그(사이트)에 방문하지 않았는데, 이미지를 무단도용하여 트래픽이 발생되는 경우가 생깁니다.
아마존 라이트세일의 경우 유료이기 때문에 트래픽 관리는 필수입니다.
그래서 오늘은 .htaccess파일에 코드를 추가하여 이미지 핫링크(Image hotlinking)을 방지하는 방법에 대해 알아봅니다.
작업을 시작하기에 앞서 FTP프로그램 중의 하나인 파일질라를 설치 후 본인의 워드프레스 블로그 폴더에 접근해야합니다.
혹시 파일질라 혹은 다른 FTP 프로그램을 사용중이 아니라면 아래 글을 참고 하세요
워드프레스 핫링크 방지 방법 따라하기
1. 파일질라 FTP프로그램을 실행하여 로그인합니다.
2. 아마존 라이트세일 워드프레스 설치 경로에 접근합니다.
/opt/bitnami/wordpress
3. .htaccess 파일을 다운 받습니다. 파일을 더블 클릭하거나 드래그하여 왼쪽으로 옮기면 다운 받아집니다.
4. Notepad++ 등의 문서 편집기를 열어 해당 파일을 불러옵니다.
아무것도 하지 않은 기본 상태의 .htaccess 파일을 다음처럼 설정 되어 있습니다.
# BEGIN WordPress
# The directives (lines) between "BEGIN WordPress" and "END WordPress" are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
아마존 라이트세일에서 워드프레스을 이용하여 만든 블로그의 경우 웬만한 보안 설정은 되어 있는 것 같다는 생각이 드네요
.htaccess 파일이 접근권한만 보아도 644로 되어 있다. 만약 644가 아닌경우 CHMOD 명령어를 사용하여 644로 변경해두어야 합니다.
그렇지 않은경우, 다른 사람들이 링크를 통해 해당파일에 접근할 수 있게 되어, 수정하거나 다운받을 수 있게 됩니다.
apache의 모듈중에서 mod_rewrite 가 활성화 되어 있을 때 .htaccess 파일에 RewriteRule을 정할 수 있어요.
즉, RewriteCond을 만족하는 경우 지정된 RewriteRule이 적용되어 주소를 다시 쓰게되는 것입니다.
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?naragara.com [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !daum\. [NC]
RewriteCond %{HTTP_REFERER} !naver\. [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://test.com/noLink.gif [NC,R,L]
</IfModule>
접근을 허용하는 사이트에 본인의 사이트와 검색엔진들을 추가해줄 수 있어요.
위 코드가 정확히 동작하지 않을 수 있으니, 참고만 하기 바랍니다.