一臺服務器安裝了APACHE,如何綁定多個域名和網站內容呢?最簡單的方法固然就是不一樣的站用不一樣的端口。但這樣就需在域名後加入端口號才能訪問,不能直接以域名訪問。另外一個方法就是使用主機頭名虛所主機了。打開APACHE配置文件httpd.conf 在最後一行輸入如下代碼linux
NameVirtualHost *:80 #使用虛擬主機,80端口 <VirtualHost *:80> #第一個主機,80端口 DocumentRoot 「D:/root/abc」 #指向本地位置 ServerName www.abc.com #主機名稱(注意這個很重要,就是你的域名,準確輸入才能成功) </VirtualHost> #結束第一個主機配置 <VirtualHost *:80> #第二個主機,80端口 DocumentRoot 「D:/root/def」 #指向本地位置 ServerName www.def.com #主機名稱 </VirtualHost> <VirtualHost *:80> #第三個主機,80端口 DocumentRoot 「D:/root/ghi」 #指向本地位置 ServerName www.ghi.com #主機名稱 </VirtualHost>
如此類推,只要你的機性能好,帶寬夠,多掛幾個均可以apache
Aapche 若是須要綁定多個域名到一個IP上,是支持的。須要注意如下2點:服務器
1 必需要開啓 NameVirtualHost開關選項,性能
如:NameVirtualHost 220.231.220.231:80網站
2 NameVirtualHost 須要指定具體的端口spa
例如":80",跟<VirtualHost 220.231.32.*:80>對應,不然會報錯:翻譯
mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results。code
翻譯過來就是: NameVirtualHost 地址,指定端口和不指定端口混合使用是不支持的,將會產生未逾期的後果。server
未逾期的後果就是: 第2個不起做用,僅當一個站點設置起做用。blog
完整的例子:
# # VirtualHost example: # Almost any Apache directive may go into a VirtualHost container. # The first VirtualHost section is used for requests without a known # server name. # NameVirtualHost 219.133.61.226:80 <VirtualHost 219.133.61.226:80> ServerAdmin hot@vip.qq.com DocumentRoot /usr/local/apache2/htdocs1 ServerName www.linux51.com ErrorLog logs/linux51.com-error_log CustomLog logs/linux51.com-access_log common </VirtualHost> <VirtualHost 219.133.61.226:80> ServerAdmin hot@vip.qq.com DocumentRoot /usr/local/apache2/htdocs2 ServerName www.linux52.com ErrorLog logs/linux52.com-error_log CustomLog logs/linux52.com-access_log common </VirtualHost>
此文從百度文庫轉載