基於域名、端口、IP地址構建虛擬主機(含多個Demo小實驗)

虛擬主機

虛擬Web主機概念:

在同一臺物理服務器中運行多個Web站點,其中每一個站點並不獨立

佔用一臺真正的計算機

Httpd服務支持的虛擬主機類型

基於域名的虛擬主機——常用

基於端口的虛擬主機

基於IP地址的虛擬主機

基本架構拓撲圖(簡單拿繪圖畫的)

在這裏插入圖片描述

基於域名的虛擬主機(含Demo)

基於域名的虛擬主機即是爲每個虛擬主機配置不同的域名,但其指向的IP地址都爲一個。同時也是使用最爲廣泛的虛擬主機類型。

Demo

1、安裝實驗所需DNS、HTTP服務

[root@localhost ~]# yum -y install bind httpd

2、修改DNS服務的全局配置文件、區域配置文件

全局配置文件(/etc/named.conf)

修改監聽端口爲any,修改允許訪問爲any

在這裏插入圖片描述

區域配置文件(/etc/named.rfc1912.zones)

添加kgc.comaccp.com兩個區域

在這裏插入圖片描述

3、配置區域數據配置文件

[root@localhost ~]# cd /var/named/
[root@localhost ~]#cp -p named.localhost kgc.zone
[root@localhost ~]#cp -p named.localhost accp.zone
[root@localhost ~]#vim  kgc.zone/accp.zone
vi編輯器中
刪除IPV6地址
按G定位末行
添加
www  IN A 192.168.116.135(本機IP地址)
wq保存退出

在這裏插入圖片描述
4、修改HTTP主配置文件

位置:/etc/httpd/conf/httpd.conf

按G定位末行;i插入
  1 <VirtualHost *:80>                        //*爲IP地址,80爲端口號        
  2 DocumentRoot /var/www/html/kgc         //網站地址
  3 ServerName www.kgc.com                 //域名
  4 Errorlog "logs/www.kgc.com.error_log"      //錯誤日誌地址
  5 CustomLog "logs/www.kgc.com.access_log" common       //日誌地址(末尾使用common引用下面的配置)
  6   <Directory "/var/www/html">
  7     Require all granted
  8   </Directory>
  9 </VirtualHost>                //收尾,結束
 10 
 11 <VirtualHost *:80>
 12 DocumentRoot /var/www/html/accp
 13 ServerName www.accp.com
 14 Errorlog "logs/www.accp.com.error_log"
 15 CustomLog "logs/www.accp.com.access_log" common
 16   <Directory "/var/www/html">
 17     Require all granted
 18   </Directory>
 19 </VirtualHost>

5、建立域名對應的首頁

[root@localhost httpd]# cd /var/www/html/
[root@localhost html]# mkdir accp kgc
[root@localhost html]# cd kgc/
[root@localhost kgc]# vim index.html
vi編輯器中
<h1>this is kgc web</h1>
wq保存退出
[root@localhost kgc]# cd ../
[root@localhost html]# cd accp/
[root@localhost accp]# vim index.html
vi編輯器中
<h1>this is kgc web</h1>
wq保存退出
[root@localhost accp]# 

6、驗證試驗結果

在這裏插入圖片描述
在這裏插入圖片描述

基於端口的虛擬主機(含Demo)

Demo

1、修改HTTP主配置文件

位置:/etc/httpd/conf/httpd.conf

  1 <VirtualHost *:80>                          //80端口爲http的默認端口
  2 DocumentRoot /var/www/html/kgc
  3 ServerName www.kgc.com
  4 Errorlog "logs/www.kgc.com.error_log"
  5 CustomLog "logs/www.kgc.com.access_log" common
  6   <Directory "/var/www/html">
  7     Require all granted
  8   </Directory>
  9 </VirtualHost>
 10 
 11 <VirtualHost *:8080>                           //修改端口爲8080
 12 DocumentRoot /var/www/html/kgc02
 13 ServerName www.kgc.com
 14 Errorlog "logs/www.kgc02.com.error_log"
 15 CustomLog "logs/www.kgc02.com.access_log" common
 16   <Directory "/var/www/html">
 17     Require all granted
 18   </Directory>
 19 </VirtualHost>

2、建立對應首頁

[root@localhost httpd]# cd /var/www/html/
[root@localhost html]# mkdir kgc02
[root@localhost html]# cd kgc02/
[root@localhost kgc]# vim index.html
vi編輯器中
<h1>this is kgc02 web</h1>
wq保存退出

3、修改主配置文件

查找Listen,照下圖進行修改

在這裏插入圖片描述

4、驗證實驗結果

在這裏插入圖片描述
在這裏插入圖片描述

基於IP的虛擬主機(含Demo)

Demo

注意:此實驗需要事先再添加一塊網卡,保證最少有兩張網卡存在。

1、修改HTTP主配置文件

位置:/etc/httpd/conf/httpd.conf

  1 <VirtualHost 192.168.116.135:80>                          //修改IP地址
  2 DocumentRoot /var/www/html/kgc
  4 Errorlog "logs/www.kgc.com.error_log"
  5 CustomLog "logs/www.kgc.com.access_log" common
  6   <Directory "/var/www/html">
  7     Require all granted
  8   </Directory>
  9 </VirtualHost>
 10 
 11 <VirtualHost 192.168.116.138:80>                           //修改端口爲8080
 12 DocumentRoot /var/www/html/kgc02
 14 Errorlog "logs/www.kgc02.com.error_log"
 15 CustomLog "logs/www.kgc02.com.access_log" common
 16   <Directory "/var/www/html">
 17     Require all granted
 18   </Directory>
 19 </VirtualHost>

第3行與第13行爲指定域名,因爲本次實驗訪問網站通過不同的IP地址進行,不需要使用域名,因此可以刪除。

2、修改監聽地址

地址:/etc/httpd/conf/httpd.conf

查找Listen,並照下圖進行修改

在這裏插入圖片描述

輸入systemctl restart httpd即可進行實驗驗證。(首先需要保證站點下存在對應首頁)

3、實驗驗證

在這裏插入圖片描述
在這裏插入圖片描述

注意:防火牆一定要關閉!!!!或者保證能讓HTTP服務通過,要不肯定會出錯。血的教訓。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章