天天看點

LAMP系列:基于域名的虛拟WEB主機

前言:

------------------------------------------------------------------------- 

案例環境一:基于域名的虛拟WEB主機

案例描述:

3)建構基于域名的虛拟主機伺服器,用于支撐以上兩個WEB站點。 

案例實施:

1)為虛拟主機提供域名解析 

# yum -y install bind bind-chroot caching-nameserver     //安裝bind  

# cd /var/named/chroot/etc/  

# cp -p named.caching-nameserver.conf named.conf      //生成全局配置檔案  

# vi named.conf         //編輯全局配置檔案  

    options {  

                     listen-on port 53 { 192.168.100.110; };  

                     ……  

                     allow-query     { any; };  

                     allow-query-cache { any; };  

                   };  

     ……  

     view 100 {  

                    match-clients      { any; };  

                    match-destinations { any; };  

                    recursion yes;  

                    include "/etc/named.zones";  

                    };  

# cp -p named.rfc1912.zones named.zones        //生成主配置檔案  

# vi named.zones      //編輯主配置檔案  

        zone "yye1.com." IN {  

                      type master;  

                      file "yye1.com.zero";  

                      allow-update { none; };  

                      };  

        zone "minitoo.com." IN {  

                      file "minitoo.com.zero";  

                      };   

# cd ../var/named/                                   //切換區域配置檔案目錄  

# cp -p named.zero yye1.com.zero          //生成yye1.com區域配置檔案  

# cp -p named.zero minitoo.com.zero    //生成minitoo.com區域配置檔案   

# vi yye1.com.zero                                  //修改yye1.com區域配置檔案   

  $TTL    86400  

  @               IN SOA  dnssvr.yye1.com.      dongjun.yye1.com. (  

                                          42              ; serial (d. adams)  

                                          3H              ; refresh  

                                          15M             ; retry  

                                          1W              ; expiry  

                                          1D )            ; minimum  

          IN      NS      dnssvr.yye1.com.  

  dnssvr  IN      A       192.168.100.110  

  www     IN      A       192.168.100.100  

# vi minitoo.com.zero                  //修改minitoo.com區域配置檔案 

$TTL    86400  

@               IN SOA  dnssvr.yye1.com.      dongjun.yye1.com. (  

                                         42              ; serial (d. adams)  

                                         3H              ; refresh  

                                         15M             ; retry  

                                         1W              ; expiry  

                                         1D )            ; minimum  

         IN      NS      dnssvr.yye1.com.  

www     IN      A       192.168.100.100  

# service named start       //啟動named服務  

Starting named:                                            [  OK  ] 

# vi /etc/hosts  

   192.168.100.100         www.yye1.com www.minitoo.com 

2)為虛拟主機準備網頁文檔。 

# mkdir -p /var/www/html/yye1.com 

# mkdir -p /var/www/html/minitoo.com 

3.在以上兩個檔案夾中建立index.html檔案,編寫不同的網頁内容。

# echo "<h1>www.yye1.com</h1>" >; /var/www/html/yye1.com/index.html  

# echo "<h1>www.minitoo.com</h1>" >; /var/www/html/minitoo.com/index.html 

3)配置并啟動httpd伺服器。 

1.編寫獨立的虛拟主機配置檔案,并通過Include配置加載到httpd.conf檔案中。(為目錄/var/www/html/minitoo添加Directory區域,并設定使用者通路授權。)

# vi /usr/local/httpd/conf/extra/httpd-vhosts.conf   //建立獨立的配置檔案

NameVirtualHost 192.168.100.100  //設定虛拟主機監聽位址

  <VirtualHost  192.168.100.100> 

          ServerAdmin [email protected] 

          DocumentRoot "/var/www/html/yye1.com" 

          <Directory "/var/www/html/yye1.com">  //設定目錄通路權限

                  Order allow,deny 

                  Allow from all 

          </Directory> 

          ServerName yye1.com  //主機名

          ServerAlias www.yye1.com  //主機名稱

          ErrorLog "/var/www/logs/yye1.com-error_log"  //錯誤日志

          CustomLog "/var/www/logs/yye1.com-access_log" common  //通路日志

  </VirtualHost> 

          ServerAdmin [email protected]  //管理者郵箱

          DocumentRoot "/var/www/html/minitoo.com"  //網站根目錄

          <Directory "/var/www/html/minitoo.com">  //設定目錄通路權限

                  AuthName "minitoo.com Directory"  //定義受保護的領域名稱,該内容将在浏覽器彈出的認證對話框中顯示

                  AuthType Basic  //設定認證類型,Basic:基本認證

                  AuthUserFile /usr/local/httpd/conf/.minitoopwd  //設定用于儲存使用者賬戶、密碼的認證檔案路徑

                  require valid-user  //要求隻有認證檔案中的合法使用者才能通路。其中alid-user表示所有合法使用者,若隻授權給單個使用者,可改為指定的使用者名(如:webadmin)

          ServerName minitoo.com 

          ServerAlias www.minitoo.com 

          ErrorLog "/var/www/logs/minitoo.com-error_log" 

          CustomLog "/var/www/logs/minitoo.com-access_log" common 

</VirtualHost> 

# mkdir -p /var/www/logs        //建立日志存放目錄 

# vi /usr/local/httpd/conf/httpd.conf          //編輯主配置檔案 

    Include conf/extra/httpd-vhosts.conf  

2.使用htpasswd工具建立使用者認證資料檔案,并添加授權使用者dongjun、minitoo。

# /usr/local/httpd/bin/htpasswd -c /usr/local/httpd/conf/.minitoopwd dongjun  

    // -c:生成.minitoopwd檔案,隻在第一次生成檔案時需要。  

    New password:                                                 //輸入密碼  

    Re-type new password:                                  //确認密碼  

    Adding password for user dongjun             //添加dongjun使用者成功  

# /usr/local/httpd/bin/htpasswd /usr/local/httpd/conf/.minitoopwd minitoo  

New password:                                                    //輸入密碼  

Re-type new password:                                     //确認密碼  

Adding password for user minitoo                 //添加dongjun使用者成功 

3.重新開機httpd伺服器程式,并确認端口的監聽狀态。

# service httpd restart  

# netstat -anput  | grep 80  

tcp        0      0 :::80                       :::*                        LISTEN      3844/httpd 

4)在客戶機中通路虛拟主機。 

<a target="_blank" href="http://blog.51cto.com/attachment/201205/121355746.jpg"></a>

<a href="http://minitoo.blog.51cto.com/attachment/201205/16/4201040_1337141316m1EZ.png"></a>

<a href="http://minitoo.blog.51cto.com/attachment/201205/16/4201040_13371413252jeu.png"></a>

本文轉自 jundong 51CTO部落格,原文連結:http://blog.51cto.com/minitoo/864705,如需轉載請自行聯系原作者

繼續閱讀