워드프레스를 사용하여 웹사이트를 운영할 때, 내가 올려놓은 이미지, mp3, 기타 파일들에 대한 Link가 공유되어, 사용자들이 사이트에 방문하지도 않고 Link를 통해 바로 파일만 다운로드 받는 문제가 생길 수 있다.
이런 경우 열심히 만들어 놓은 서비스를 사용자들에게 보여줄 기회를 놓치게 되며, 또한 불필요한 Traffic 발생으로 호스팅 비용이 추가로 발생할 수도 있다.
이런 경우 아래와 같이 .htaccess 파일을 설정할 수 있다.
1
Contents
1. 웹사이트 root에 있는 .htaccess 파일을 다음의 코드를 추가한다.
.htaccess 파일은 일반적으로 많이 사용되는 Apache 웹서버 설정을 위한 파일이라고 한다.
RewriteCond %{HTTP_REFERER} !^https://bekseju9n\.pe\.kr/ [NC] RewriteCond %{REQUEST_URI} !hotlink\.(zip|mp3|mp4|mov) [NC] RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in.*$ [NC] RewriteRule .*\.(zip|mp3|mp4|mov)$ https://bekseju9n.pe.kr/ [NC]
라인별로 살펴보면
- 호출이 bekseju9n.pe.kr이 아닌 다른 곳에서 이뤄지고 있고,
- 호출이 zip, mp3, mp4, mov로 끝나는 주소를 가지고 있고,
- 워드프레스에 로그인된 상태도 아니라면
- 위 호출 주소를 https://bekseju9n.pe.kr로 돌려라
이다.
2. 동작 확인
제대로 동작하는 지 확인해보기 위해 Chrome Secret 창을 띄운다.
Chrome Secret 창은 워드프레스 개발할 때 누군가 외부에서 접근하는 것처럼 동작시키고 싶을 때 유용하다.
1) zip 파일 호출 / 로그인 X
앞 서 포스팅에 올렸던 WordPress Template Plugin의 zip 파일 주소를 창에 입력해본다. 2

.htaccess 파일 수정 전엔 링크를 웹브라우저에 넣기만 하면 다운로드 되던 zip 파일이 다운로드 되지 않는다.
2) jpg 파일 호출 / 로그인 X
혹시 zip 파일만 막는게 아니라 다른 파일들도 전부 막고 있는 건 아닌지, jpg 파일을 확인해보자.

3) 로그인 후 zip 파일 호출
굳이 캡쳐 안올린다. 다운로드 잘 된다.
3. 종합
당초 기대했던 동작은 zip이나 mov 파일 호출 시 정상적으로 홈페이지 메인페이지로 이동하는 것이었다. 현재는 ‘해당 페이지를 찾을 수 없습니다’ 에러를 내고 있다.
추후 시간될 때 .htaccess를 좀 더 손보기로 하자.