이 모듈이 제공하는 지시어들을 사용하여 서버가 요청을
받을때 URL을 수정하거나 조작할 수 있다.
서로 다른 사용장소에서 Alias와 Redirect를 사용하면 다른 지시어와
같이 표준 결합 방법에
따라 처리한다. 그러나 같은 사용장소에 (예를 들어, 같은
먼저 모든 Redirect를 처리한 후 Alias를 처리한다. 그래서
그래서 여러 지시어가 동일한 하위경로에 해당하는 경우 모든 지시어를 적용하기위해서는 가장 상세한 경로를 먼저 사용해야 한다. 예를 들어, 다음 설정은 의도한대로 동작한다:
그러나 위의 두 지시어 순서를 바꾸면 /foo/bar
/foo
http://myserver/image/foo.gif를 요청하면 서버는 /ftp/pub/image/foo.gif 파일을 넘겨준다.
url-path 끝에 /를 포함하면, URL 끝에 /를
사용해야만 영향이 있음을 주의하라. 즉, Alias /icons/
/usr/local/apache/icons/ 설정은 url /icons와
관계가 없다.
대응의 대상을 포함하는 여러
특히 Alias를 만들었다면, 직접
대상 디렉토리의 접근을 허용해줘야 한다.
이 지시어는 /icons 디렉토리를 사용할
수 있다:
Redirect 지시어는 이전 URL을 새로운 URL로 대응한다. 클라이언트에게 새로운 URL을 보내고, 클라이언트는 새로운 주소로 다시 한번 접속한다. (%로 인코딩된) URL-path로 시작하는 요청을 받으면 (%로 인코딩된) URL로 시작하는 새로운 URL로 리다이렉션 오류를 보낸다.
클라이언트가 http://myserver/service/foo.txt를 요청하면 대신 http://foo2.bar.com/service/foo.txt에 접근하라는 응답을 받는다.
Redirect 지시어는 설정파일에서
나오는 순서와 관계없이 Alias와 ScriptAlias 지시어보다 우선순위가
높다. 또, .htaccess 파일이나
status 아규먼트를 지정하지않으면, "임시 (temporary)" (HTTP 상태 302) 리다이렉션을 보낸다. 즉, 클라이언트에게 자원을 임시로 옮겼다고 알린다. status 아규먼트를 사용하여 다른 HTTP 상태코드를 반환할 수 있다:
status에 숫자 상태코드를 사용하여 다른 상태코드도
반환할 수 있다. 상태가 300과 399 사이라면 URL
아규먼트를 사용해야 하고, 아니라면 생략해야 한다. 단, 아파치
코드에 상태가 정의되있어야 한다 (http_protocol.c의
send_error_response 함수 참고).
이 지시어는
이 지시어는 클라이언트에게 리다이렉션이 임시적임을 (상태
302) 알린다. Redirect temp와 정확히 같다.
이 지시어는 클라이언트에게 리다이렉션이 영구적임을 (상태
301) 알린다. Redirect permanent와 정확히 같다.
http://myserver/cgi-bin/foo를 요청하면 서버는
/web/cgi-bin/foo 스크립트를 실행한다.
이 지시어는 /cgi-bin을 사용할 수 있다: