본문 바로가기

카테고리 없음

.htaccess 파일

.htaccess 파일이란?

hypertext access의 약자, 앞의 점은 숨긴 파일을 나타낸다. 이 파일은 디렉터리에 대한 설정 옵션을 제공한다. 웹서버 접근 제어 파일로, 내부적으로 새로운 타입을 명명하거나 디렉토리 접근 권한 등 다양한 설정을 변경할 수 있다.

.htaccess의 용도

허가, 인증, URL재작성, 스팸봇 차단, SSL, 디렉토리 리스팅, 에러 응답 커스터마이징 등

.htaccess의 역할

아파치같은 웹서버에서 브라우저같은 클라이언트에서 접근할 때 어떤 식으로 서비스를 제공할 지 apache2.conf와 sites-enabled 가상 호스트 설정 파일을 통해 결정하는데, 이때 서비스할 파일이 위치한 곳의 디렉토리 경로를 지정하게 된다. 그리고 이 디렉토리에 접근을 허용할지 말지, 어떻게 보여줄지 등을 정하게 된다. sites-enabled에 있는 파일에서 <Directory>블럭을 통해 이것을 지정하게 되는데 .htaccess 파일은 이것과 똑같은 역할을 한다. <Directory>블럭을 통한 서버의 전역 설정이 있는 상태에서 .htaccess 파일을 사용하면 .htaccess가 위치한 디렉토리에 대한 허용 규칙을 오버라이드(덮어쓰게)하게 된다.

아파치 웹서버의 설정 탐색 순서

  1. 웹브라우저(클라이언트)
  2. apache2.conf 로드
  3. apache2.conf에 포함된 include 구문으로 sites-enabled 로드
  4. 서비스 디렉토리 권한 등 옵션 적용 후
  5. 다시 웹브라우저에 결과 리턴