天天看點

LAMP環境下虛拟主機配置(基于IP)

本教程實驗環境:

[root@localhost ~]# cat /etc/redhat-release 
CentOS release 6.5 (Final)
[root@localhost ~]# 
           

一、首先在dns server上面配置域名解析

(1).在dns server上面建立三個域名

[root@localhost ~]# vim /etc/named.rfc1912.zones
           
LAMP環境下虛拟主機配置(基于IP)

1-1.png

zone "zzqa.com" IN {

        type master;
        file "zzqa.com";
        allow-update { none; };
};
zone "zzqb.com" IN {
        type master;
        file "zzqb.com";
        allow-update { none; };
};
zone "zzqc.com" IN {
        type master;
        file "zzqc.com";
        allow-update { none; };
};
           

(2) 在網站根目錄對應建立三個網站的目錄,并在每個目錄下建立一個人html測試頁面。

[root@localhost ~]# cd /var/www/html/
[root@localhost html]# mkdir zzqa
[root@localhost html]# mkdir zzqb
[root@localhost html]# mkdir zzqc
[root@localhost html]# ls
1.html  1.php  DVWA  zzqa  zzqb  zzqc
[root@localhost html]#
           
[root@localhost html]# echo "I am zzqa" > zzqa/index.html
[root@localhost html]# echo "I am zzqb" > zzqb/index.html
[root@localhost html]# echo "I am zzqc" > zzqc/index.html
[root@localhost html]#
           

(3)配置域名解析

  • 首先在

    /var/named/

    目錄下面拷貝3份模闆分别作為解析三個站點的配置檔案。
[root@localhost ~]# cd /var/named/
[root@localhost named]# cp named.localhost zzqa.com
[root@localhost named]# cp named.localhost zzqb.com
[root@localhost named]# cp named.localhost zzqc.com
           
  • 依次編輯

    zzqa.com

    zzqb.com

    zzqc.com

    三個解析檔案,編輯完成,儲存并退出。
[root@localhost named]# vim zzqa.com
           
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
@       IN      A       192.168.3.112
www     IN      A       192.168.3.113
game    IN      A       10.1.1.1
           
[root@localhost named]# vim zzqb.com
           
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
@       IN      A       192.168.3.112
www     IN      A       192.168.3.114
game    IN      A       10.1.1.2
           
[root@localhost named]# vim zzqc.com
           
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
@       IN      A       192.168.3.112
www     IN      A       192.168.3.115
game    IN      A       10.1.1.3
           

(4).到此,我們可以重新開機named服務,測試一下我們配置的域名解析是否成功。

[root@localhost named]# service named restart
           
LAMP環境下虛拟主機配置(基于IP)

1-2.png

重新開機服務沒毛病,說明我們的dns解析配置沒出錯!

下面測試:

開始測試一下失敗了,原因是三個目錄沒有給可讀權限:

  • 是以我們先剛給個可讀權限
[root@localhost named]# ll | grep zzq
[root@localhost named]# chmod +r zzq*
[root@localhost named]# ll | grep zzq
           
LAMP環境下虛拟主機配置(基于IP)

1-3.png

  • 加完權限一定要重新開機服務
[root@localhost named]# service  named restart
           
LAMP環境下虛拟主機配置(基于IP)

1-4.png

  • 然後再來測試就OK了,如下圖所示
LAMP環境下虛拟主機配置(基于IP)

1-5.png

二、然後配置apache三個虛拟主機

1.在eth0上面添加3個IP位址

[root@localhost ~]# ifconfig eth0:1 192.168.3.113 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0:2 192.168.3.114 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0:3 192.168.3.115 netmask 255.255.255.0
           

配置完之後檢視一下:

LAMP環境下虛拟主機配置(基于IP)

2-1.png

2.修改apache服務配置檔案

[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
           
  • 在此檔案尾部,将下圖部分複制三份,中間最好有空行,避免錯誤也美觀。
LAMP環境下虛拟主機配置(基于IP)

2-2.png

  • 然後修改為如下内容:
<VirtualHost 192.168.3.113:80>
    ServerAdmin www.zzqa.com
    DocumentRoot /var/www/html/zzqa/
    ServerName 192.168.3.113
    ErrorLog logs/dummy-host.zzqa.com-error_log
    CustomLog logs/dummy-host.zzqa.com-access_log common
</VirtualHost>


<VirtualHost 192.168.3.114:80>
    ServerAdmin www.zzqb.com
    DocumentRoot /var/www/html/zzqb/
    ServerName 192.168.3.114
    ErrorLog logs/dummy-host.zzqb.com-error_log
    CustomLog logs/dummy-host.zzqb.com-access_log common
</VirtualHost>

<VirtualHost 192.168.3.115:80>
    ServerAdmin www.zzqc.com
    DocumentRoot /var/www/html/zzqc/
    ServerName 192.168.3.115
    ErrorLog logs/dummy-host.zzqc.com-error_log
    CustomLog logs/dummy-host.zzqc.com-access_log common
</VirtualHost>
           
LAMP環境下虛拟主機配置(基于IP)

2-3.png

要注意圖2-3裡面的網站路徑要和下圖2-4建立的三個檔案夾路徑一緻

LAMP環境下虛拟主機配置(基于IP)

2-4.png

  • 然後儲存退出

3.重新開機httpd服務

[root@localhost html]# service httpd restart
           
LAMP環境下虛拟主機配置(基于IP)

3-1.png

4.測試,在本機上面将DNS位址改為我們搭建DNS Server的位址

LAMP環境下虛拟主機配置(基于IP)

3-2.png

LAMP環境下虛拟主機配置(基于IP)

zzqa.png

通過web通路三個站點,如下圖所示:

LAMP環境下虛拟主機配置(基于IP)

zzqb.png

LAMP環境下虛拟主機配置(基于IP)

zzqc.png

沒毛病,全部正常!

nice!