아파치 웹서버 mod_rewrite 파일경로 제한하는 법 질문


virtualBox로 Ubuntu 16.04 LTS, Apache2 사용중입니다. rewrite모듈을 사용해서 파일에 "서버도메인/파일경로"로 접근하던 것에서 "서버도메인/rewriteRule"로 접근하도록 바꾸었습니다. 문제는 "서버도메인/rewriteRule"의 경우만 파일에 접근시키고 "서버도메인/파일경로"는 Not Found를 띄우고 싶은데 양쪽 다 파일에 접근이 되는 것입니다.

Apache 설정으로 해결하는 방법이 있나요?

  • Apache 설정이 아닌 다른 방법 실제로 해보지는 않았지만, DocumentRoot에 index.php를 만들고 .htaccess에서 모든 URI를 index.php로 향하도록 만든 다음에 index.php에서 주소를 받아온 후 DocumentRoot 상위 디렉토리에 있는 파일을 표시하는 방법을 생각해봤습니다. 구현이 될까요?
  • 2016년 07월 23일에 작성됨

조회수 192


1 답변


자신의 사이트에 있는 이미지만 외부에서 직접 참조해서 사용하는걸 막기 위해 아래와 같은 방식을 사용한다고 하네요.

RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost [NC] 
RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost.*$ [NC] 
RewriteRule \.(gif|jpg)$ - [F]

이걸 응용해서 gif나 jpg대신에 php를 넣으면 될 수도 있을것 같아서 공유합니다. 출처

  • 2016년 07월 24일에 작성됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 모바일 게임도 조금 만들어 봤습니다.

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close