Apache를 이용한 단일 서버에서 다중 웹사이트 구현 방법

서버에 여러 웹사이트를 호스팅하기 위한 주요 전략은 세 가지로 나뉩니다: - 고유 IP 주소 기반 구성 - 도메인 이름 기반 설정 - 포트 번호 차이 활용 (1) IP 주소 분리 방식 CentOS7 환경에서 192.168.5.102와 192.168.5.104 두 개의 IP를 사용하는 예시입니다.

[root@server conf.d]# cd /etc/httpd/conf.d/
[root@server conf.d]# nano multi_site_config.conf
<VirtualHost 192.168.5.102:9988>
    ServerAdmin admin@example.com
    DocumentRoot /data/www/main_site
    ServerName main.example.com
    ErrorLog /var/log/httpd/main_error.log
    CustomLog /var/log/httpd/main_access.log combined
</VirtualHost>
<VirtualHost 192.168.5.104:9988>
    ServerAdmin admin@example.com
    DocumentRoot /data/www/sub_site
    ServerName sub.example.com
    ErrorLog /var/log/httpd/sub_error.log
    CustomLog /var/log/httpd/sub_access.log combined
</VirtualHost>
[root@server conf.d]# systemctl restart httpd
(2) 도메인 기반 설정 DNS 서버가 없는 경우 hosts 파일을 수정해야 합니다.

[root@server conf.d]# nano multi_site_config.conf
<VirtualHost *:9988>
    ServerAdmin admin@example.com
    DocumentRoot /data/www/main_site
    ServerName main.example.com
    ErrorLog /var/log/httpd/main_error.log
    CustomLog /var/log/httpd/main_access.log combined
</VirtualHost>
<VirtualHost *:9988>
    ServerAdmin admin@example.com
    DocumentRoot /data/www/sub_site
    ServerName sub.example.com
    ErrorLog /var/log/httpd/sub_error.log
    CustomLog /var/log/httpd/sub_access.log combined
</VirtualHost>
[root@server conf.d]# systemctl restart httpd
hosts 파일 수정 예시:

127.0.0.1 localhost
192.168.5.102 main.example.com
192.168.5.102 sub.example.com
(3) 포트 분리 방식 추가 포트를 설정하고 각각의 가상 호스트를 지정합니다.

[root@server conf]# nano https.conf
Listen 9988
Listen 9989

[root@server conf.d]# nano multi_site_config.conf
<VirtualHost *:9988>
    ServerAdmin admin@example.com
    DocumentRoot /data/www/main_site
    ServerName main.example.com
    ErrorLog /var/log/httpd/main_error.log
    CustomLog /var/log/httpd/main_access.log combined
</VirtualHost>
<VirtualHost *:9989>
    ServerAdmin admin@example.com
    DocumentRoot /data/www/sub_site
    ServerName sub.example.com
    ErrorLog /var/log/httpd/sub_error.log
    CustomLog /var/log/httpd/sub_access.log combined
</VirtualHost>
[root@server conf.d]# systemctl restart httpd

태그: 가상호스트 다중사이트 HTTPD 서비스 도메인설정

6월 23일 01:09에 게시됨