블로그 정리중 글 옮김92009년 3월 26일 글)
apache 웹서버에서는 mod_rewrite 와 Virtual User Hosts 를 사용하여, 각 user들에게 도메인을 제공해줄 수 있습니다.
예를 들면, http://www.server.com/~userid로 접속을 하는 것을 http://userid.server.com 으로 서비스할 수 있습니다.
1. 네임서버 설정
해당하는 zone 파일의 호스트 이름에 "*" 문자(모든 호스트)를 사용
* IN A 123.123.123.123
2. mod_rewrite 모듈 빌드 및 탑재
mod_rewrite.so 가 존재할 경우(apache의 모듈들이 설치된 디렉토리)에는 바로 httpd.conf를 수정하면 됩니다.
위의 모듈이 없을 경우, apache를 다시 빌드해야 합니다.
[root @ linux]# env CFLAGS="-DEAPI"
[root @ linux]# ./configure
--prefix=/etc/httpd
--enable-module=so
--enable-shared=max
--enable-module=rewrite
--enable-shared=rewrite
[root @ linux]# make
[root @ linux]# make install
3. httpd.conf 에 rewrite 관련 설정
LoadModule rewrite_module libexec/mod_rewrite.so
AddModule mod_rewrite.c
......
<VirtualHost *>
ServerAdmin admin_at_domain.com
DocumentRoot /home/httpd/html
ServerName www.server.com
ServerAlias domain.com *.server.com
ErrorLog logs/server.com-error_log
CustomLog logs/server.com-access_log common
### Virtual User Hosts
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.server.com$
RewriteCond %{HTTP_HOST} !^server.com$
RewriteCond %{HTTP_HOST} ^[^.]+.server.com$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+).server.com(.*) /home/$1/html$2
</VirtualHost>
'공부하고(?) > Linux' 카테고리의 다른 글
BIND, DNS server 설치 및 운영(name server) (0) | 2012.08.11 |
---|---|
ProFTPd 설치 - ftp 서버 설치 및 운영 (0) | 2012.08.11 |
특정 포트에 접속 수를 알아내는 법 (0) | 2012.08.11 |
NetFilter를 이용한 방화벽 (0) | 2012.08.11 |
Apache + PHP +MySQL, APM 설치 및 운영 (0) | 2012.08.11 |