httpd虛擬主機的作用:可以將多個站點綁定在同一個IP上,也可在同一主機上將多個網(wǎng)站綁定在多個IP上;
虛擬主機可以根據(jù)端口綁定,也可基于IP綁定,示例如下:
www.a.com --> 10.1.1.100:80 www.b.net --> 10.1.1.100:808 www.c.org --> 10.1.1.100:8080或
www.a.com --> 10.1.1.100 www.b.net --> 10.1.1.101 www.c.org --> 10.1.1.102以上兩種也可以混合使用;亦可多個域名共用一個IP及端口,此種情況下需要dns上將多個域名映射到同一個IP地址。
配置虛擬主機(以CentOS 7為例):
Apache httpd配置文件:
主配置文件:
/etc/httpd/conf/httpd.conf /etc/httpd/conf.d/*conf #也可作為主配置文件的一部分1、安裝服務(wù):
yum -y install httpd2、備份主配置文件并修改,以便后續(xù)開啟虛擬主機:
vim /etc/httpd/conf/httpd.conf,注釋掉默認的網(wǎng)頁文件路徑 # DocumentRoot "/var/www"---> httpd網(wǎng)頁文件默認路徑3、找到#ServerName www.example.com:80,添加一下內(nèi)容:
ServerName localhost:80 #添加之后httpd服務(wù)啟動時將不會嘗試使用DNS服務(wù)器解析本機hostname4、在/etc/httpd/conf.d/新建虛擬主機配置文件,方便后續(xù)管理,不用的時候刪除即可
vim /etc/httpd/conf.d/vhosts.conf4.1 如果使用基于端口的方式,則
Listen 808 #監(jiān)聽需要啟用的端口4.2 如果使用基于IP的方式,則
4.3 如果使用FQDN的方式,則(此種方法主要靠DNS服務(wù)器將多個域名和IP做綁定)
注:在修改httpd的配置文件后,請使用httpd -t檢查配置文件,沒問題再重啟服務(wù)
可能出現(xiàn)的問題,及解決辦法
1、經(jīng)過上述配置,虛擬主機可能存在不能訪問的問題,請關(guān)閉SELinux及iptables;
SElinux 關(guān)閉方法: setenforce 0 #臨時關(guān)閉 vim /etc/selinux/config #需要重啟 SELINUX=disabled SELinux查看方法: getenforce disable #處于關(guān)閉裝填 CentOS 7防火墻關(guān)閉方法: systemctl disable firewalld.service2、如果此時仍不能訪問,提示路徑不能訪問的forbidden錯誤,在虛擬主機配置文件中加入以下內(nèi)容:
注:網(wǎng)頁文件默認不允許訪問
添加之后,httpd -t檢查下語法錯誤,沒問題的話重啟服務(wù)即可,此時虛擬主機應(yīng)能正常訪問;
server-status及身份認證
1、如果需要通過某虛擬主機獲取服務(wù)器狀態(tài),并需要認證身份,則添加以下內(nèi)容:
2、使用htpasswd -c -m /etc/httpd/conf/.htpasswd USERNAME 創(chuàng)建用戶名及設(shè)定密碼
注:-c命令只在第一次創(chuàng)建用戶時使用,用戶生成密碼文件
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。