使用虛擬主機必須要注釋掉httpd的主機模組,即修改httd.conf的主配置檔案,找到,將這段內容注釋掉就可以了。
#ip addr add 10.10.50.101/16 dev eth0
#ip addr add 10.10.50.102/16 dev eth0
關於如何配置ip位址,此處不再贅述,後面我會專門寫篇關於ip程式設計客棧位址的文章。
第一種:基於ip
apache默然安裝的時候,主配置檔案位於/etc/httpd/conf/下的httpd.conf,可以在該檔案的最下面來新增虛擬主機,但是我習慣於重新建立乙個虛擬主機配置檔案,這樣方便與日後的管理操作。
1.建立虛擬主機配置檔案
2.編輯該檔案,新增如下內容
servername www.jb51.net
documentroot "程式設計客棧/www/jb51.net"
servername www.jbzj.com
documentroot "/www/jbzj.com"
------儲存退出即可,這是最簡單的配置
3.建立跟目錄檔案
#mkdir /www/
4.在跟目錄檔案下建立主頁檔案,用於後面的訪問測試
#vi /www/jbzj.com/index.html,新增一下內容
this is jb51 test
儲存退出。然後編輯另乙個目錄下面的主頁檔案
#vi /www/jbzj.com/index.html,新增一下內容
this is jbzj test
5.重啟httpd服務(重啟之前最好先檢查一下語法是否有問題httpd -t)
6.客戶端訪問測試
分別在瀏覽器內輸入:
10.10.50.100和10.10.50.101
會看到我們之間定義的主頁。
第二種 基於埠port的虛擬主機
同樣使用上面建立的vitual.conf作為配置檔案,假設我們此時使用80和8080埠,ip位址為10.10.50.102
1.修改httpd的主配置檔案,vi /etc/httpd/conf/httpd.conf
首先將listen 80前面的注釋去掉,然後再新增一行listen 8080,儲存退出。
2.修改虛擬主機配置檔案,新增如下內容
servername www.jb51.net
documentroot "/www/jb51.net"
servername www.jb51.org
documentroot "/www/jb51.org"
3.建立所需的根檔案
#mkdir /www/
4.建立各根檔案的預設訪問頁面,建立過程同第一種步驟四,這是把裡面的內容換成你能識別的就可以了。我使用的分別是jb51.net和jb51.org兩個表示符。
5.檢查語法
6.重啟服務
7.訪問測試
分別在瀏覽器上輸入10.10.50.102以及10.10.50.102:8080,因為瀏覽器預設是使用80埠,所以當訪問80埠的**時可以不用指定埠。
第三種 基於網域名稱的虛擬主機
1.基於網域名稱的虛擬主機,首先要在虛擬配置檔案中指定ip:port,即修改虛擬配置檔案,在第一行新增namevirtualhost 10.10.50.100:80
然後在下面新增以下資訊
servername hello.jb51.net
documentroot "/hello/jb51.net"
servername hello.jb51.org
documentroot "/hello/jb51.org"
2.建立所需的跟檔案目錄
mkdir /hello/
3.編輯根檔案目錄下面的主頁檔案,參照上面的方法
4.修改客戶端主機的hosts檔案,確保可以正常解析咱們設定的兩個網域名稱
hosts檔案位於/c/windows/drivers/etc/hosts(好像是的,記得不太清楚了,童鞋們可以百度一下)
新增以下兩列
10.10.50.100 hello.jb51.net
10.10.50.100 hello.jb51.org
5.通過ping命令確保可以正常解析
即ping hello.jb51.net和ping hello.jb51.orgwww.cppcns.com都顯示是通的,且返回值為10.10.50.100即可。
6.重啟httpd服務
7.瀏覽器測試
分別在瀏覽器裡輸入hello.jb51.net和hello.jb51.org然後檢視主頁面是不是我們之前的標識頁面即可。
補充:1.虛擬主機也支援訪問日誌和錯誤日誌的位置重定義,即只需要在documentroot 下面新增進日誌資訊條目即可,比如我要讓hello.jb51.org的訪問日誌和錯誤日誌都重定位到/hello/jb51.org/log下面,需要新增這行
cutomlog "/hello.jb51.org/log" combined
errorlog "/hello/jb51.org/log"
儲存退出之後,再建立jb51.org下面的log目錄即可。
2.虛擬主機也支援返回伺服器的狀態資訊
例如我要顯示伺服器,只要在httpd的主配置檔案中將這段資訊的內容去掉注釋即可,將allow from後面新增你的ip位址,這樣只允許你自己訪問檢視。檢視的方法:在瀏覽器輸入hello.jb51.org/server-status即可檢視。即如果說directory是定義了檔案路徑的話,那麼location則定義的是url路徑,任意乙個路徑後面新增server-status都可以檢視伺服器資訊。
3.虛擬主機同樣支援真實主機一樣的訪問限制
本文標題: apache虛擬主機三種配置方式小結
本文位址: /os/linux/140077.html
Apache 配置虛擬主機三種方式
一 基於ip 1.假設伺服器有個ip位址為192.168.1.10,使用ifconfig在同乙個網路介面eth0上繫結3個ip root localhost root ifconfig eth0 1 192.168.1.11 root localhost root ifconfig eth0 2 1...
Apache 配置虛擬主機三種方式
一 基於ip root localhost root ifconfig eth0 1 192.168.1.11 root localhost root ifconfig eth0 2 192.168.1.12 root localhost root ifconfig eth0 3 192.168.1...
Apache 配置虛擬主機三種方式
一 基於ip 1.假設伺服器有個ip位址為192.168.1.10,使用ifconfig在同乙個網路介面eth0上繫結3個ip root localhost root ifconfig eth0 1 192.168.1.11 root localhost root ifconfig eth0 2 1...