配置基於域名、IP、端口號的Apache服務器

一、項目實驗目的:
安裝及配置Apache服務器,使Apache服務器能夠通過DNS服務器爲基礎,來實現
(1)    基於域名的虛擬主機
(2)    基於IP地址和端口號的虛擬主機
***************
二、項目計劃:
(1)準備3臺Linux主機,並配置好相應的網絡參數,確認每臺Linux主機之間
都能正常通信。(這個實驗也可以在一臺虛擬機上實現,通過添加虛擬網卡來添加ip地址)
(2)3臺Linux主機中其中一臺來做DNS服務器,另外兩臺分別來做基於域名的
Apache服務器和基於IP地址及端口號的Apache服務器。
(3)    先安裝及配置DNS服務器,並在其中一臺Apache服務器上通過修改配置文件和做相應的網站根目錄,添加網頁,來實現基於域名的Apache服務器,並進行測試。
(4)    再次配置DNS服務器,在另外一臺Apache服務器上配置其配置文件,並做相應的網站根目錄,添加網頁,來實現基於IP地址及端口號的Apache服務器,並進行測試。
**************
三、項目實施過程:
(1)準備3臺Linux主機,其配置如下:
DNS服務器:FQDN—dns.web.com  static IP—192.168.1.53/24
基於域名的Apace服務器:FQDN--apache1.web.com   static IP—192.168.1.80
基於IP及端口號的Apache服務器FQDN—apache2.web.com static IP—192.168.1.90
所使用到的命令:#system-config-network  設置IP地址等參數
                #hostname 主機名稱    修改主機名
                #vim /etc/hosts          修改主機名
 
 
 
                 #vim /etc/sysconfig/network   修改主機名
(2)安裝並配置DNS服務器(先做基於域名的Apache服務器的主機記錄)
大概過程:
a.查詢以下軟件包是否已安裝:
bind-utils(默認安裝)
bind(DNS服務器,必要!)
caching-nameserver(做緩存DNS服務器時需要)
bind-chroot(最後安裝)
命令是:
rpm  -qa|grep bind
rpm  -qa|grep caching-nameserver
 
b.安裝軟件包:(先確保已添加光盤鏡像)
      #mkdir  /mnt/cdrom
      #mount  /dev/cdrom  /mnt/cdrom
#cd  /mnt/cdrom/Server  或  #cd  /misc/cd/Server
   #rpm -ivh  /mnt/cdrom/Server/bind-9.3.3*
#rpm  -ivh  /mnt/cdrom/Server/caching-nameserver-*
#rpm  -ivh  /mnt/cdrom/Server/bind-chroot*(這裏把這個包也安裝上,只是進入到配置文件的目錄繁瑣一點)
*****************
c.   開始配置DNS服務器
#cd  /var/named/chroot/etc
#cp  named.cachin* named.conf  拷貝named.caching-nameserver.conf 這個模板文件,並取名爲named.conf  , 這個名字是必須叫named.conf
#vim  named.conf    編輯主配置文件named.conf  ,其內容如下:
options {
        listen-on port 53 { 192.168.1.53; };
        directory      “/var/named”;
        query-source   port  53;
        allow-query    { 192.168.1.0/24; };
};
zone “.” {                       //根
        type  hint ;
        file “named.ca”;
};
zone “web.com” {
        type  master;
        file “web.com.zone”;
};
zone “1.168.192.in-addr.arpa” {
        type master;
        file “1.192.168.in-addr.arpa.zone”;
};
保存並退出 shift : wq
然後先用命令來檢查一下named.conf 這個配置文件:
#named-checkconf  /var/named/chroot/etc/named.conf
如果沒有出錯,則不會出現任何錯誤信息。否則再進行修改,這裏要特別注意每個
區域要用完整的{ };括起來,還有反向區域的名字的格式 -------.in-addr.arpa
再者這個區域文件的名字要與/var/named 下的區域配置文件名要相同。
 
配置區域正向解析文件:
#cd  /var/named/chroot/var/named   //進入開始創建並配置區域配置文件
#cp  localhost.zone  web.com.zone   //拷貝模板文件,配置區域正向解析文件
#vim  web.com.zone    內容如下:
 
$TTL  86400
@            IN   SOA   dns.web.com.     root.web.com.  (
2011051000   3H  15M   1W   1D )
@           IN  NS           dns.web.com.
dns          IN  A            192.168.1.53
chat         IN  A            192.168.1.80
bbs          IN  CNAME   chat
www        IN  CNAME   chat
保存並退出
#named-checkzone  web.com  web.com.zone    用檢測工具檢查其不正確性,命令
格式爲:#named-checkzone  區域名  區域配置文件(如果不在當前目錄下,要給
決對路徑)
 
配置區域反向解析文件:
#cd  /var/namd/chroot/var/named
#cp  web.com.zone  1.168.192.in-addr.arpa.zone  拷貝,配置區域反向解析文件
#vim  1.168.192.in-addr.arpa.zone    //內容如下:
$TTL  86400
@            IN   SOA   dns.web.com.     root.web.com.  (
2011051000   3H  15M   1W   1D )
@           IN  NS           dns.web.com.
53           IN  PTR            dns.web.com.
80           IN  PTR            chat.web.com.
保存並退出
用命令#named-checkzone  web.com  1.168.192.in-addr.arpa.zone  進行檢測正確性
 
接下來修改DNS指向 #vim /etc/resolv.conf  內容如下:
nameserver  192.168.1.53
修改配置文件的訪問權限:
#chgrp  named  /var/named/chroot/var/named/*
#chgrp  named  /var/named/chroot/etc/*
啓動DNS 服務器: 注意IP地址一定要爲靜態
#service named restart或 #/etc/rc.d/init.d/named restart
開機自動開啓: #chkconfig  --level 35 named on
測試: #nslookup
>server   查看當前主機的DNS服務器IP
>bbs.web.com
>chat.web.com
>set type=ptr
>192.168.1.80
或者其他命令來測試 #dig –x bbs.web.com(正向)  # dig –t 192.168.1.80(反向) 
#host bbs.web.com    #host 192.168.1.80
*************到此DNS服務器做基於域名的Apache服務器的配置基本完成。
****************
下面開始安裝及配置基於域名的Apache服務器:
首先IP 地址設爲靜態:192.168.1.80  DNS指向:192.168.1.53
使用到的命令:#system-config-network   #vim  /etc/resolv.conf (可以根據上面提到的方法做)
安裝httpd 軟件包:#cd  /misc/cd/Server
      #rpm –Uvh  httpd-2.2.3-11.el5_1.3.i386.rpm
      #rpm –Uvh  httpd –manual*
編輯httpd.conf 配置文件:
#vim  /etc/httpd/conf/httpd.conf
²  根據項目的要求,(在Web服務器上建立兩個基於域名的虛擬主機網站,其域名分別爲:chat.web.com和bbs.web.com;網站根目錄分別爲:/var/www/chat和/var/www/bbs;主服務器網站則通過域名www.web.com來訪問;主網站的根目錄爲:/var/www/html。)配置如下:
Shift : se  nu
取消#NameVirtualHost  *:80 的註銷       大概在第993行左右,並修改如下:
NameVirtualHost  192.168.1.80:80  因爲這裏要做基於域名的Apache
Shift+g  移動來最後一行,通過複製最後的七行進行修改(y7y)或者直接添加以下內容:
<VirtualHost  192.168.1.80:80>
   ServerAdmin  [email protected] (這裏不要這一行也可以,這是管理員的郵箱)
   DocumentRout  /var/www/html  (這一行是必有的,這個是網站的目錄路徑)
   ServerName   www.web.com (這一行也是必要的,這個是定義域名)
</VirtualHost>
  後面兩行是有關日誌記錄的,這裏就不去理它了,刪除掉。
<VirtualHost  192.168.1.80:80>
   ServerAdmin  [email protected] (這裏不要這一行也可以,這是管理員的郵箱)
   DocumentRout  /var/www/chat  (這一行是必有的,這個是網站的目錄路徑)
   ServerName  chat.web.com (這一行也是必要的,這個是定義域名)
</VirtualHost>
<VirtualHost  192.168.1.80:80>
   ServerAdmin  [email protected] (這裏不要這一行也可以,這是管理員的郵箱)
   DocumentRout  /var/www/bbs  (這一行是必有的,這個是網站的目錄路徑)
   ServerName   bbs.web.com (這一行也是必要的,這個是定義域名)
</VirtualHost>  這裏要特別注意每一行是取消註銷的,沒有#號,和<VirtualHost  192.168.1.80:80>與</VirtualHost>是在一起的。
 
保存並退出
接下來爲每個網站新建站點目錄並添加網頁:
#mkdir  /var/www/html    #mkdir  /var/www/chat     #mkdir  /var/www/bbs
#cd  /var/www/html
#echo  Welcome to My first Web at www.web.com  at /var/www/html >index.html
#cd  /var/www/chat
#echo  Welcome to My second Web at chat.web.com at /var/www/chat >index.html
#cd  /var/www/bbs
#echo  Welcome to My third Web at bbs.web.com at /var/www/bbs >index.html
 
OK,重啓httpd服務器,#service  httpd  restart
測試:可在windows 上或者在linux上
在windows上或在linux的圖形界面上打開web瀏覽器,http://www.web.com  http://chat.web.com  http://bbs.web.com 測試
在linux命令行上,則安裝lynx工具:
#cd  /misc/cd/Server   #rpm –ivh lynx-2.8.5-28.1.i386.rpm
用命令#lynx  http://www.web.com
      #lynx  http://chat.web.com
      #lynx  http://bbs.web.com
如果成功,則能看到相應的網站信息,如果不成功,問題有可能出現在:
1.      Apache服務器能否與DNS服務器正常通訊,且DNS服務器能否正確解析。
2.      防火牆設置
3.      Apache服務器的配置文件httpd.conf 有沒有配置正確,注意取消#NameVirtualHost  *:80 的註銷並修改,爲NameVirtualHost  192.168.1.80:80
4.      在虛擬主機中定義的網站目錄名稱和域名要與DNS中的記錄和網站的目錄名稱要一致。
****************到這裏基於域名的Apache服務器配置完成。
*******************
現在在另外一臺Linux主機上配置基於IP地址及端口號的Apache服務器:
首先IP 地址設爲靜態:192.168.1.191  192.168.1.241  DNS指向:192.168.1.53
使用到的命令:#system-config-network 修改ip
  #vim  /etc/resolv.conf
內容:nameserver  192.168.1.53
#cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0
#vim /etc/sysconfig/network-scripts/ifcfg-eth0:0
修改兩行: DIVICE=eth0:0
           IPADDR=192.168.1.241
#service network restart
Ping 測試 :#ping 192.168.1.191   #ping 192.168.1.241  #ping 192.168.1.53
 
²  根據項目要求,(在這臺Web服務器上建立三個基於IP地址和端口號的虛擬主機網站。各網站對應的IP地址分別是:192.168.1.191 192.168.10.241和192.168.1.241;各網站所使用的服務端口分別是:TCP 80、TCP 80和TCP  8080;各網站的根目錄分別爲:/var/www/www2、/var/www/mail和/var/www/vod;各網站分別使用域名www2.web.com、mail.web.com和vod.web.com來訪問。)在
DNS服務器中添加相應的A記錄和PTR記錄:
#cd  /var/named/chroot/var/named
#vim  web.com.zone    內容如下:
 
$TTL  86400
@            IN   SOA   dns.web.com.     root.web.com.  (
2011051000   3H  15M   1W   1D )
@           IN  NS           dns.web.com.
dns          IN  A            192.168.1.53
chat         IN  A            192.168.1.80
www2       IN  A           192.168.1.191
mail         IN  A            192.168.1.241
bbs          IN  CNAME      chat
www        IN  CNAME      chat
vod        IN  CNAME      mail
保存退出
#cd  /var/named/chroot/var/named
#vim  1.168.192.in-addr.arpa.zone    //內容如下:
$TTL  86400
@            IN   SOA   dns.web.com.     root.web.com.  (
2011051000   3H  15M   1W   1D )
@           IN  NS           dns.web.com.
53           IN  PTR            dns.web.com.
80           IN  PTR            chat.web.com.
191          IN  PTR           www2.web.com
241          IN  PTR           mail.web.com
保存並退出
重動DNS 服務器: 注意IP地址一定要爲靜態
#service named restart或 #/etc/rc.d/init.d/named restart
測試:在DNS服務器上和基於IP的Apache服務器上使用到的命令#nslookup測試
 
按照上面的提及的方法,在Apache2.web.com這臺Linux主機上,(即基於IP地址的虛擬主機的Apache服務器上)安裝httpd軟件包。
編輯httpd.conf 配置文件:
#vim  /etc/httpd/conf/httpd.conf
Shift : se nu
在Listen 80 的下一行再添加一行Listen 8080     位置大概在第134行
Shift+g     在最後一行添加以下內容: 可通過複製並修改來實現yny  p
<VirtualHost  192.168.1.191:80>
   ServerAdmin  [email protected]
   DocumentRout  /var/www/www2 
   ServerName   www2.web.com
</VirtualHost>
<VirtualHost  192.168.1.241:80>
   ServerAdmin  [email protected]
   DocumentRout  /var/www/mail 
   ServerName   mail.web.com
</VirtualHost>
<VirtualHost  192.168.1.241:8080>
   ServerAdmin  [email protected]
   DocumentRout  /var/www/vod 
   ServerName   vod.web.com
</VirtualHost>
保存並退出
接下來爲每個網站新建站點目錄並添加網頁:
#mkdir  /var/www/www2    #mkdir  /var/www/mail     #mkdir  /var/www/vod
#cd  /var/www/www2
#echo  Welcome to My first Web at www2.web.com  at /var/www/www2 >index.html
#cd  /var/www/mail
#echo  Welcome to My second Web at mail.web.com at /var/www/mail >index.html
#cd  /var/www/vod
#echo  Welcome to My third Web at vod.web.com at /var/www/vod >index.html
重啓httpd服務器 #service httpd restart
測試:可在windows 上或者在linux上
在windows上或在linux的圖形界面上打開web瀏覽器,http://www2.web.com  http://mail.web.com:80   http://vod.web.com:8080   進行測試
在linux命令行上,則安裝lynx工具:
#cd  /misc/cd/Server   #rpm –ivh lynx-2.8.5-28.1.i386.rpm
用命令#lynx  http://www2.web.com
      #lynx  http://mail.web.com:80
      #lynx  http://vod.web.com:8080   (後面要跟端口號,因爲這裏是測試基於端口號的虛擬主機)
***************到這裏基於IP地址及端口號的虛擬主機完成。
***************************************************
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章