1. 程式人生 > >在一臺Apache服務器上創建多個站點(不同域名)

在一臺Apache服務器上創建多個站點(不同域名)

admin 進程 HR 開啟 ron serve vhost web 解析

使用不同的域名來區分不同的網站,所有的域名解析都指向同一個 IP 地址。Apache通過在HTTP頭中附帶的 host參數來判斷用戶需要訪問哪一個網站。

例如要在一臺服務器上設置如下兩個站點:

  • http://www.test1.com
  • http://www.test1.com

下面以CentOS 7.2系統為例,詳細說明如何配置基於不同域名的Apache虛擬主機。

第一步:開啟Apache的vhost模塊

在 http.conf 配置文件中,找到下面的代碼行,刪除前面的 # 號,並開啟這個 vhost 模塊。

#LoadModule vhost_alias_module modules/mod_vhost_alias.so

第二步:在 Apache的配置文件夾下新建 vhost.conf,用以作為虛擬主機的配置文件

設默認情況下網站目錄為 /webdata 根據實際情況添加以下的配置(放在同一個vhost.conf中):
 1 <VirtualHost  *:80>                         #監聽80端口
 2 ServerAdmin  [email protected]                 #網站管理員聯系方式
 3 DocumentRoot  "/webdata/test1"              #網站目錄
 4 ServerName  www.test1.com                   #
站點域名,用於識別不同的網站 5 ServerAlias test1.com #別名 6 ErrorLog "logs/test1-error.log" #錯誤日誌路徑 7 CustomLog "logs/test1-access.log" common #訪問日誌路徑 8 </VirtualHost> 9 10 <VirtualHost *:80> #監聽80端口 11 ServerAdmin [email protected] #
網站管理員聯系方式 12 DocumentRoot "/webdata/test2" #網站目錄 13 ServerName www.test2.com #站點域名,用於識別不同的網站 14 ServerAlias test2.com #別名 15 ErrorLog "logs/test2-error.log" #錯誤日誌路徑 16 CustomLog "logs/test2-access.log" common #訪問日誌路徑 17 </VirtualHost>
這裏只配置了兩份域名信息,服務器上有多少個網站,就配置多少份以上信息,並根據實際情況修改其中的內容。http.conf 文件中加入一行 Include /etc/httpd/conf/vhost.conf,將 vhost.conf 文件內容包含進來。

第三步:在/etc/hosts文件中將網站的域名綁定到本地環回地址上(在hosts文件末尾加入以下信息)

1 127.0.0.1 www.test1.com
2 127.0.0.1 www.test2.com

第四步:重啟

使用 service httpd reload 命令重新加載配置文件,或使用 service httpd restart 命令重啟 Apache 進程。
最後把域名解析到服務器,不同域名成功訪問了不同的網站內容。

下面以wampserver3.1.0為例說明在Windows本地配置多站點服務器

第一步:開啟Apache的vhost模塊

在 http.conf 配置文件中,找到下面的代碼行,刪除前面的 # 號,並開啟這個 vhost 模塊。
#LoadModule vhost_alias_module modules/mod_vhost_alias.so

第二步:在 Apache的配置文件夾下新建 vhost.conf,用以作為虛擬主機的配置文件。

設默認情況下網站目錄為D:/wamp64/www/test1 根據實際情況添加以下的配置(放在同一個vhost.conf中):
 1 <VirtualHost  127.0.0.1:80>                 #監聽80端口
 2 ServerAdmin  [email protected]             #網站管理員聯系方式
 3 DocumentRoot  "D:/wamp64/www/test1"         #網站目錄
 4 ServerName  127.0.0.1                       #站點域名,用於識別不同的網站
 5 ServerAlias  127.0.0.1                      #別名
 6 ErrorLog  "logs/test1-error.log"            #錯誤日誌路徑
 7 CustomLog  "logs/test1-access.log" common   #訪問日誌路徑
 8 </VirtualHost>
 9 
10 <VirtualHost  127.0.0.2:80>                 #監聽80端口
11 ServerAdmin  [email protected]                 #網站管理員聯系方式
12 DocumentRoot   "D:/wamp64/www/test2"        #網站目錄
13 ServerName  127.0.0.2                       #站點域名,用於識別不同的網站
14 ErrorLog   "logs/test2-error.log"           #錯誤日誌路徑
15 CustomLog   "logs/test2-access.log" common  #訪問日誌路徑
16 </VirtualHost>
這裏只配置了兩份域名信息,服務器上有多少個網站,就配置多少份以上信息,並根據實際情況修改其中的內容。http.conf 文件中加入一行 Include/etc/httpd/conf/vhost.conf,將 vhost.conf 文件內容包含進來。

第三步:重啟服務器

在一臺Apache服務器上創建多個站點(不同域名)