Apache HTTP Server Version 2.4
설명: | 사용자별 디렉토리 |
---|---|
상태: | Base |
모듈명: | userdir_module |
소스파일: | mod_userdir.c |
이 모듈을 사용하면 http://example.com/~user/
식으로
사용자별 디렉토리에 접근할 수 있다.
설명: | 사용자별 디렉토리 위치 |
---|---|
문법: | UserDir directory-filename |
기본값: | UserDir public_html |
사용장소: | 주서버설정, 가상호스트 |
상태: | Base |
모듈: | mod_userdir |
UserDir
지시어는 사용자의 문서에 대한
요청을 받을때 사용자 홈디렉토리 안에서 사용할 실제 디렉토리를
지정한다. Directory-filename은 다음 중 하나이다:
disabled
키워드.
enabled
키워드로 (아래 참고) 직접 이름을 지정하지 않았다면
모든 사용자명-디렉토리 변환을 하지 않는다.disabled
키워드 뒤에 공백으로 구분한 사용자명 목록.
사용자명이 enabled
구문에 있다고 하더라도, 이 목록에
있는 사용자명은 디렉토리 변환을 하지 않는다.enabled
키워드 뒤에 공백으로 구분한 사용자명 목록.
전체 disable을 사용하고 사용자명이 disabled
구문에
없더라도, 사용자명을 디렉토리 변환한다.Userdir
지시어에 enabled
나
disabled
키워드를 사용하지 않으면, 아규먼트를
파일명 패턴으로 처리하여 디렉토리로 변환한다.
http://www.foo.com/~bob/one/two.html
에 대한 요청은
다음과 같이 변환된다:
사용한 UserDir 지시어 | 변환한 경로 |
---|---|
UserDir public_html | ~bob/public_html/one/two.html |
UserDir /usr/web | /usr/web/bob/one/two.html |
UserDir /home/*/www | /home/bob/www/one/two.html |
다음 지시어는 클라이언트에게 리다이렉션을 보낸다:
사용한 UserDir 지시어 | 변환한 경로 |
---|---|
UserDir http://www.foo.com/users | http://www.foo.com/users/bob/one/two.html |
UserDir http://www.foo.com/*/usr | http://www.foo.com/bob/usr/one/two.html |
UserDir http://www.foo.com/~*/ | http://www.foo.com/~bob/one/two.html |
"UserDir ./"
는 "/~root"
를 아마도 바람직하지 않게
"/"
로 변환한다. 설정에 "UserDir
disabled root
"를 포함하길 강력히 권한다. 자세한 정보를 알려면
Directory
지시어와 보안 팁도 참고하라.
추가 예제:
몇몇 사용자에게만 UserDir
디렉토리를 허용한다면,
다음과 같다:
UserDir disabled
UserDir enabled user1 user2 user3
대부분의 사용자에게 UserDir
디렉토리를 허용하고
일부만 거부한다면, 다음과 같다:
UserDir enabled
UserDir disabled user4 user5 user6
다른 사용자 디렉토리를 지정할 수도 있다. 다음과 같은 명령어를 사용한다면:
Userdir public_html /usr/web http://www.foo.com/
http://www.foo.com/~bob/one/two.html 요청을 하면, 먼저 ~bob/public_html/one/two.html 페이지를 찾고, /usr/web/bob/one/two.html을 찾은 후, 마지막으로 http://www.foo.com/bob/one/two.html으로 리다이렉션을 보낸다.
리다이렉션을 사용한다면 목록의 마지막에 두어야 한다. 아파치는 리다이렉션이 성공했는지 알 수 없기때문에, 리다이렉션을 목록 앞에 두면 항상 리다이렉션을 사용하게 된다.