Apache2基于域名的虛擬主機(jī)實(shí)現(xiàn)
Apache2基于域名的虛擬主機(jī)實(shí)現(xiàn)作者:sunry主頁 http://www.bmwm.cn微博 http://weibo.com/usenrong1、概述The Realization of Vi
Apache2基于域名的虛擬主機(jī)實(shí)現(xiàn)
作者:sunry
主頁 http://www.bmwm.cn
微博 http://weibo.com/usenrong
1、概述The Realization of Virtual Host of APACHE Based on Domain Names
針對各個(gè)子站點(diǎn)使用獨(dú)立域名訪問同一IP 地址并搭載在同一臺Web 服務(wù)器上,提出了基于域名的APACHE Web 運(yùn)用服務(wù)系統(tǒng)的虛擬主機(jī)處置方案。經(jīng)過對BIND9域名解析軟件及APACHE 運(yùn)用軟件系統(tǒng)的配置提供虛擬主機(jī)服務(wù),完成各子站點(diǎn)的獨(dú)立域名訪問。
2、基于域名的虛擬主機(jī)
虛擬主機(jī)(Virtual Host)是運(yùn)用特殊 的軟硬件技術(shù),把一臺運(yùn)轉(zhuǎn)在因特網(wǎng)上的服務(wù)器主機(jī)分紅一臺臺“虛擬”的主機(jī),每一臺虛擬主機(jī)都具有獨(dú)立的域名或IP 地址,具有完整的InterNET 服務(wù)器(WWW 、FTP 、Email 等)功用。其主要優(yōu)點(diǎn):虛擬主機(jī)之間完全獨(dú)立,并可由用戶自行治理 。
基于域名的虛擬主機(jī)是指服務(wù)器上運(yùn)轉(zhuǎn)每一臺虛擬主機(jī)都具有獨(dú)立域名解析;運(yùn)轉(zhuǎn)主要原理是客戶端在訪問網(wǎng)絡(luò)站點(diǎn)時(shí)所提交域名信息,經(jīng)過DNS 解析到相應(yīng)的網(wǎng)絡(luò)服務(wù)器,再由網(wǎng)絡(luò)服務(wù)器檢其HTTP 頭信息,由APACHE 軟件對HTTP 頭信息中的主機(jī)名停止查找,指向相對應(yīng)的虛擬目錄并提供主頁訪問服務(wù)器。
基于域名的虛擬主機(jī)主要優(yōu)點(diǎn)是:可以完成多個(gè)網(wǎng)絡(luò)站點(diǎn)共享一個(gè)IP 地址;多個(gè)虛擬站點(diǎn)可以共享一個(gè)數(shù)據(jù)庫系統(tǒng),同時(shí)方便治理 員對虛擬主機(jī)數(shù)據(jù)庫的維護(hù)。依據(jù)其原理,完成基于域名的虛擬主機(jī)主要處置兩個(gè)效果,一是設(shè)計(jì)獨(dú)立域名,更改DNS 服務(wù)器的配置;二是在APACHE 運(yùn)轉(zhuǎn)的WEB 服務(wù)器上配置虛擬主機(jī)。 2.1 DNS服務(wù)器配置
DNS 服務(wù)器在整個(gè)網(wǎng)絡(luò)的運(yùn)轉(zhuǎn)進(jìn)程中起著十分重要的作用,可以把域名解析為獨(dú)立的IP 地址,也可以把IP 地址解析成域名。完成獨(dú)立域名支持的虛擬主機(jī)需求在DNS 服務(wù)器上更改相應(yīng)的配置,當(dāng)客戶端停止DNS 央求時(shí),DNS 服務(wù)器可以把域名解析成IP 地址,以到達(dá)找到該主機(jī)的目的。一臺WEB 服務(wù)器上放置了多個(gè)網(wǎng)絡(luò)站點(diǎn)并且都在一個(gè)域下,只是在主機(jī)中所處目錄不同。例如:http:// wiki.js.todaysoft.com.cn ,http:// othersite.js.todaysoft.com.cn 區(qū)分屬于知識庫和其他站點(diǎn)。兩個(gè)學(xué)站點(diǎn)同在WEB 服務(wù)器主機(jī)的/var/www 和/var/www/othersite目錄下。DNS 服務(wù)器就是讓外部訪問的域名可以指向WEB 服務(wù)器。如何讓各站點(diǎn)主頁依據(jù)其域名來判別其主頁位置由APACHE 虛擬主機(jī)來完成。要完成各站點(diǎn)獨(dú)立域名訪問,首先,確定域名的格式,各站點(diǎn)以其目錄稱號為域名的最前端,例如:“知識庫”對就目錄“www ”設(shè)置域名:http://wiki.js.todaysoft.com.cn,
,其它站點(diǎn)類推。其次,配置DNS 服務(wù)器。DNS 服務(wù)器主要配置文件都在/etc/bind目錄下,DNS 服務(wù)器完成的解析進(jìn)程分為正向解析,所要完成的獨(dú)立域名,需求把這些域名和服務(wù)器上的一個(gè)IP 地址樹立映射關(guān)系。在正向解析文件中需求更改IN 記載。(DNS 服務(wù)器,WEB 服務(wù)器測試在內(nèi)網(wǎng)同一服務(wù)器上)
創(chuàng)建正向解析
zone "js.todaysoft.com.cn" {
type master;
file "/var/lib/bind/js.todaysoft.com.cn.hosts";
};
創(chuàng)建js.todaysoft.com.cn.hosts 文件內(nèi)容如下
$ttl 38400
js.todaysoft.com.cn. IN SOA ns.js.todaysoft.com.cn. youshengrong.js.todaysoft.com.cn.
(
1292202854
10800
3600
604800
38400 )
js.todaysoft.com.cn. IN NS ns.js.todaysoft.com.cn.
wiki.js.todaysoft.com.cn. IN A 192.168.12.113
othersite.js.todaysoft.com.cn. IN A 192.168.12.113
ns.js.todaysoft.com.cn. IN A 192.168.12.113
2.2 WEB服務(wù)器基于域名的虛擬主機(jī)配置
2.2.1 確定虛擬主機(jī)的虛擬目錄
依據(jù)WEB 服務(wù)器目錄結(jié)構(gòu)狀況不需求更改虛擬目錄的指向。
即/var/www/othersite對應(yīng)域名虛擬主機(jī)網(wǎng)址是:http:// othersite.js.todaysoft.com.cn,
目錄/var/www對應(yīng)域名知識庫虛擬主機(jī)網(wǎng)址是:http:// wiki.js.todaysoft.com.cn。
2.2.2 建立虛擬主機(jī)
配置虛擬主機(jī)othersite.js.todaysoft.com.cn
創(chuàng)建配置文件/etc/apache2/sites-available/othersite.js.todaysoft.com.cn.conf
配置內(nèi)容
DocumentRoot "/var/www/othersite"
ServerName othersite.js.todaysoft.com.cn
allow from all
,Options Indexes
配置虛擬主機(jī)wiki.js.todaysoft.com.cn
創(chuàng)建配置文件/etc/apache2/sites-available/wiki.js.todaysoft.com.cn.conf
配置內(nèi)容
DocumentRoot "/var/www"
ServerName wiki.js.todaysoft.com.cn
allow from all
Options Indexes
對此配置語句作如下說明:
1
2 ServerName wiki.js.todaysoft.com.cn:設(shè)置虛擬主機(jī)的域名。
3 ServerAdmin youshengrong@163.com:設(shè)置該虛擬主機(jī)網(wǎng)管員的郵件(可選)。
4 DocumentRoot /var/www:設(shè)置該虛擬主機(jī)的主目錄路徑。
5 ErrorLog “/var/log/apache2/wiki_errors.log” :設(shè)置該虛擬主機(jī)的出錯(cuò)日志(可選)。
6 CustomLog “/var/log/apache2/wiki_accesses.log” common :設(shè)置改虛擬主機(jī)的訪問信息文件(可選)。
2.2.3 啟用虛擬主機(jī)
運(yùn)行sudo a2ensite wiki.js.todaysoft.com.cn.conf
sudo a2ensite othersite.js.todaysoft.com.cn.conf
發(fā)現(xiàn)在 /etc/apache2/sites-enabled/ 目錄中多了一個(gè)到 /etc/apache2/sites-available/
othersite.js.todaysoft.com.cn.conf 的軟鏈接。接下來重啟apache2
sudo /etc/init.d/apache2 restart
這樣虛擬主機(jī)的站點(diǎn)wiki.js.todaysoft.com.cn 和othersite.js.todaysoft.com.cn.conf 就設(shè)置成功了。在瀏覽器中輸入http:// othersite.js.todaysoft.com.cn.conf 就可以訪問到你放在/var/www/othersite目錄下的站點(diǎn)。
,在瀏覽器中輸入http:// wiki.js.todaysoft.com.cn.conf 就可以訪問到你放在/var/www目錄下的站
點(diǎn)