|
Apache的配置文件一般放置在/etc/httpd/conf文件夾下,httpd.conf是它的主配置文件,在進(jìn)行配置時(shí)可以將虛擬主機(jī)的配置文件單獨(dú)配置,如取名為vhost.conf,然后再http.conf中加入一行包含的語(yǔ)句“Include /etc/httpd/conf/vhost.conf”即可將vhost.conf的配置文件包含進(jìn)來(lái)。 目前在一臺(tái)服務(wù)器上搭建多個(gè)網(wǎng)站的方法主要由以下幾種: 1、 基于IP地址 這種方法適用于一臺(tái)服務(wù)器有多個(gè)IP的情況,但目前阿里云的ECS只允許綁定一個(gè)公網(wǎng)IP和一個(gè)私網(wǎng)IP,故此方法不適用 2、 基于端口號(hào) 這種方法使用不同的端口號(hào)來(lái)識(shí)別不同的網(wǎng)站,實(shí)際訪問(wèn)時(shí)使用網(wǎng)址加端口號(hào)的方式來(lái)實(shí)現(xiàn),如http://port.:80,http://port.:81,http://port.:82,該方式配置后需要在網(wǎng)站后加上端口號(hào)來(lái)訪問(wèn)不同的網(wǎng)站,適用于網(wǎng)站域名短缺但服務(wù)器的端口號(hào)充足的情況,缺點(diǎn)是網(wǎng)站后需要加上端口號(hào),不利于用戶訪問(wèn) 3、 基于主機(jī)名 這種方法使用不同的域名來(lái)區(qū)分不同的網(wǎng)站,所有的域名解析都指向同一個(gè)IP,Apache通過(guò)在HTTP頭中附帶的host參數(shù)來(lái)判斷用戶需要訪問(wèn)哪一個(gè)網(wǎng)站,如http://test1.,http://test2.,http://test3.,多數(shù)情況下多個(gè)網(wǎng)站架在一臺(tái)服務(wù)器上均使用該方法,下面以CentOS6.5系統(tǒng)為例,說(shuō)明如何配置基于主機(jī)名的Apache虛擬主機(jī)。 一、 在Apache的配置文件夾下新建vhost.conf,作為虛擬主機(jī)的配置文件,在其中編寫(xiě)虛擬主機(jī)的內(nèi)容,先加入默認(rèn)的文件頭:
NameVirtualHost *:80
ServerName * # DocumentRoot為默認(rèn)情況下網(wǎng)站的目錄 DocumentRoot /www/html
二、 之后再根據(jù)實(shí)際情況添加以下的配置:
#在任意的地址上監(jiān)聽(tīng)80端口上的HTTP請(qǐng)求
#網(wǎng)站管理員的聯(lián)系方式 ServerAdmin test@ #網(wǎng)站的目錄 DocumentRoot /var/www/html/test3 #主機(jī)名,apache就是通過(guò)這個(gè)地址來(lái)識(shí)別不同的網(wǎng)站 ServerName test3. #錯(cuò)誤日志路徑 ErrorLog logs/test3.-error_log #訪問(wèn)日志路徑 CustomLog logs/test3.-access_log common
四、 服務(wù)器上有多少個(gè)網(wǎng)站,那么就分別配置多少份以上信息,并根據(jù)實(shí)際情況修改其中的內(nèi)容,測(cè)試時(shí)服務(wù)器上的頁(yè)面配置情況如下:

五、 在http.conf文件中加入一行“Include /etc/httpd/conf/vhost.conf”,將vhost.conf文件內(nèi)容包含進(jìn)來(lái) 六、在/etc/hosts文件中將網(wǎng)站的域名綁定到本地環(huán)回地址上: 127.0.0.1 test1. 127.0.0.1 test2. 127.0.0.1 test3. 七、 最后使用service httpd reload重新加載配置文件或service httpd restart重啟Apache進(jìn)程即可
八、 測(cè)試不同的域名返回了不同的網(wǎng)站內(nèi)容
如果問(wèn)題仍未解決,請(qǐng)聯(lián)系售后技術(shù)支持。
|