Apache HTTP Server Version 2.0

Apache > HTTP Server > Documentation > Version 2.0 > 모듈

# 아파치 모듈 mod_dir

설명: | "마지막 슬래쉬" 리다이렉션을 제공하고 디렉토리 index 파일을 서비스한다
상태: | Base
모듈명: | dir_module
소스파일: | mod_dir.c

### 요약

디렉토리의 index는 다음 둘중 한가지 방법으로 제공된다:

- 사용자가 작성한 보통 `index.html`이라는 파일. `DirectoryIndex` 지시어는 이 파일의 이름을 지정한다. `mod_dir`가 이 지시어를 제공한다.
- 아니라면 서버가 만든 목록. `mod_autoindex`가 이 기능을 제공한다.

두 기능은 서로 별개로 원한다면 자동 index 생성을 완전히 없앨 (혹은 교체할) 수 있다.

`dirname`이 디렉토리라면 서버는 URL `http://servername/foo/dirname` 요청을 받으면 "마지막 슬래쉬" 리다이렉션을 보낸다. 디렉토리에는 마지막 슬래쉬가 필요하다. 그래서 `mod_dir`은 `http://servername/foo/dirname/`로 리다이렉션을 보낸다.

### 지시어들

## DirectoryIndex 지시어

설명: | 클라이언트가 디렉토리를 요청할때 찾아볼 자원 목록
문법: | `DirectoryIndex local-url [local-url] ...`
기본값: | `DirectoryIndex index.html`
사용장소: | 주서버설정, 가상호스트, directory, .htaccess
Override 옵션: | Indexes
상태: | Base
모듈: | mod_dir

`DirectoryIndex` 지시어는 클라이언트가 디렉토리명 끝에 /를 붙여서 디렉토리의 index를 요청할때 찾아볼 자원 목록을 지정한다. Local-url은 요청한 디렉토리에 상대적인 문서의 (%로 인코딩된) URL이다. 보통은 디렉토리에 있는 파일명이다. 여러 URL을 지정할 수 있고, 이 경우 서버는 첫번째로 찾은 파일을 보낸다. 자원을 찾을 수 없고 `Indexes` 옵션을 설정하였다면 서버는 직접 디렉토리 목록을 만든다.

### 예제

`DirectoryIndex index.html`

이 경우 `http://myserver/docs/`를 요청할때 `http://myserver/docs/index.html`이 있으면 이를 보내고, 없다면 디렉토리 목록을 보낸다.

문서가 반드시 디렉토리에 상대적일 필요는 없다.

`DirectoryIndex index.html index.txt /cgi-bin/index.pl`

이 경우 디렉토리에 `index.html`이나 `index.txt`가 없으면 CGI 스크립트 `/cgi-bin/index.pl`을 실행한다.