傻瓜式安裝基於Apache服務部署虛擬主機功能
基於Apache服務部署虛擬主機功能
如果每臺Linux系統的伺服器上只能執行一個網站,那麼這顯然造成硬體資源的浪費。
利用虛擬主機功能,可以把一臺物理伺服器分割成多個“虛擬的伺服器”,實現資源節約,避免浪費。
Apache 的虛擬主機功能是伺服器基於使用者請求的不同 IP 地址、主機域名或埠號,實現提供多個網站同時為外部提供訪問服務的技術。
下面來詳細講解實現方法
本實驗基於cenos7搭建Apache httpd-2.4.6
首先安裝
[[email protected] ~]# yum install httpd –y
由於需要基於不同IP來實現本次實驗,所以我添加了三個不同IP
這臺linux的ens33網絡卡原先是172.16.16.1/16 所以新增另外兩個IP實現三個不同IP
[[email protected] ~]# ip addr add 172.16.16.2/16 dev ens33
[[email protected] ~]# ip addr add 172.16.16.3/16 dev ens33
一 基於 IP 地址
1 分別在 /opt/www 中建立存放不同網站資料的三個目錄,並向其中寫入網站首頁檔案。
mkdir -p /opt/www/1
mkdir -p /opt/www/2
mkdir -p /opt/www/3
echo "172.16.16.1">/opt/www/1/index.html
echo "172.16.16.2">/opt/www/2/index.html
echo "172.16.16.3">/opt/www/3/index.html
2 在 httpd 服務的配置檔案中大約 113 行處開始,分別追加寫入三個基於 IP 地址的虛 擬主機網站引數,然後儲存並退出。記得需要重啟 httpd 服務,這些配置才生效。
vim /etc/httpd/conf/httpd.conf
113 <VirtualHost 172.16.16.1>
114 DocumentRoot /opt/www/1
115 ServerName www.wawa.com
116 <Directory /opt/www/1 >
117 AllowOverride None
118 Require all granted
119 </Directory>
120 </VirtualHost>
121 <VirtualHost 172.16.16.2>
122 DocumentRoot /opt/www/2
123 ServerName bbs.wawa.com
124 <Directory /opt/www/2 >
125 AllowOverride None
126 Require all granted
127 </Directory>
128 </VirtualHost>
129 <VirtualHost 172.16.16.3>
130 DocumentRoot /opt/www/3
131 ServerName test.wawa.com
132 <Directory /opt/www/3 >
133 AllowOverride None
134 Require all granted
135 </Directory>
136 </VirtualHost>
千萬別忘了監聽80埠
到此基於IP虛擬主機功能就可實現了,啟動服務並驗證。
二 基於埠號
本人偷個懶,直接把之前的基於IP的配置檔案修改了,實現基於埠號虛擬主機。
基於80 8080 和6111這三個埠
vim /etc/httpd/conf/httpd.conf
監聽埠需要調整
驗證:
三 基於主機域名
基於主機域名需要dns解析來實現此操作,這裡就不羅列出來了具體操作在這(點選)。
還是老樣子,我還是用之前的檔案來修改
監聽埠改成80
vim /etc/httpd/conf/httpd.conf
驗證: