|
커피향이 나는 *NIX
커피닉스
시스템/네트웍/보안을 다루는 곳
|
|
|
|
| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
clackend 손님
|
올려짐: 2006.4.06 목, 12:35 am 주제: 아파치에서 사용자별 가상호스트를 설정하려합니다 |
|
|
아파치에서 사용자별 가상호스트를 설정하려합니다.
기존에는 한폴더에 사용자별 폴더를 만들고 가상호스트를 설치하였으나
사용자가 늘어나서 2개의 폴더로 나누어서 관리하려합니다.
아이이 첫글자가
a-z아이디를 가지고 있는 사용자는 USERS1
0-9아이디를 가지고 있는 사용자는 USERS2
이렇게 폴더별로 나누려합니다.
아래처럼 Rewrite 명령어를 이용햇는데 잘안되는군요
어떻게 수정해야 할까요 ?
RewriteEngine on
RewriteMap lowercase int:tolower
RewriteCond ${lowercase:%{SERVER_NAME}} !^(www|data)\.data\.ne\.kr$
RewriteCond ${lowercase:%{SERVER_NAME}} ^[^]+\.data\.ne\.kr$
RewriteRule ^(.+) %{lowercase:%{SERVER_NAME}$1 [C]
RewriteRule ^([a-z]+)\.data\.ne\.kr/(.*) /hosting_/USERS1/$1/html$2
RewriteRule ^([0-9]+)\.data\.ne\.kr/(.*) /hosting_/USERS2/$1/html$2 |
|
| 위로 |
|
 |
truefeel 카페 관리자
가입: 2003년 7월 24일 올린 글: 1277 위치: 대한민국
|
올려짐: 2006.4.06 목, 1:48 pm 주제: Re: 아파치에서 사용자별 가상호스트 설정 |
|
|
| clackend 씀: | 아파치에서 사용자별 가상호스트를 설정하려합니다.
기존에는 한폴더에 사용자별 폴더를 만들고 가상호스트를 설치하였으나
사용자가 늘어나서 2개의 폴더로 나누어서 관리하려합니다.
아이이 첫글자가
a-z아이디를 가지고 있는 사용자는 USERS1
0-9아이디를 가지고 있는 사용자는 USERS2
이렇게 폴더별로 나누려합니다.
아래처럼 Rewrite 명령어를 이용햇는데 잘안되는군요
어떻게 수정해야 할까요 ?
RewriteEngine on
RewriteMap lowercase int:tolower
RewriteCond ${lowercase:%{SERVER_NAME}} !^(www|data)\.data\.ne\.kr$
RewriteCond ${lowercase:%{SERVER_NAME}} ^[^]+\.data\.ne\.kr$
RewriteRule ^(.+) %{lowercase:%{SERVER_NAME}$1 [C]
RewriteRule ^([a-z]+)\.data\.ne\.kr/(.*) /hosting_/USERS1/$1/html$2
RewriteRule ^([0-9]+)\.data\.ne\.kr/(.*) /hosting_/USERS2/$1/html$2 |
다음과 같이 변경해보세요.
| 코드: |
RewriteEngine on
RewriteCond %{HTTP_HOST} !^(www|data)\.data\.ne\.kr$
RewriteCond %{HTTP_HOST} ^[^.]+\.data\.ne\.kr$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([a-z][^.]+)\.data\.ne\.kr(.*) /hosting_/USERS1/$1/html$2
RewriteRule ^([0-9][^.]+)\.data\.ne\.kr(.*) /hosting_/USERS2/$1/html$2
|
1. 도메인은 영문자 소문자로 이뤄지니 lowercase를 사용할 필요가 없습니다.
2. [a-z]+ 로 했을 땐 오직 a-z문자로만 이뤄진 ID를 의미합니다. a-z로 시작하는 ID 를 표시하려면 [a-z][^.]+ 로 하셔야 합니다.
3. 마지막줄의 data\.ne\.kr/(.*) 는 data\.ne\.kr(.*) 로 바꾸어야 $1/html$2 에서 넘겨받을 때 제대로 처리됩니다.
예) (abcd).data.ne.kr/1234 로 요청했다면 -> .../USER1/abcd/html/1234로 갑니다. 님이 처음 설정한대로 하면 .../USER1/abcd/html1234 로 넘어가겠죠.
4. 그리고 저는 SERVER_NAME 변수대신에 HTTP_HOST 를 사용합니다. |
|
| 위로 |
|
 |
|
|
새로운 주제를 올릴 수 없습니다 답글을 올릴 수 없습니다 주제를 수정할 수 있습니다 올린 글을 삭제할 수 없습니다 투표를 할 수 없습니다
|
Powered by phpBB © 2001, 2005 phpBB Group
|