一台伺服器可以通路多個網站,每個網站都是一個虛拟主機
DocumentRoot "/data/wwwroot/www.123.com" //定義了網站的根目錄所在位置
概念:域名(主機名)、DNS、解析域名、hosts
任何一個域名隻要指向了這台機器ip,都可以通路到這個站點。這個站點就叫預設虛拟主機。
為了便于管理(一個預設主機顯然不合适),打開一個虛拟主機配置檔案
vim /usr/local/apache2/conf/httpd.conf //搜尋httpd-vhost,去掉#去掉#就生效httpd.conf ducumentRoot和ServerName失效
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf //改為如下(
一對
<VirtualHost *:80>
</VirtualHost>
就代表一個虛拟主機,就是一個網站)
ServerAdmin [email protected] //定義管理者郵箱(不要也可)
DocumentRoot "/data/wwwroot/aming.com" //定義網站根目錄
ServerName aming.com //網站域名
ServerAlias www.aming.com //别名。一個網站可以有多個域名通路,通路内容一樣的
ErrorLog "logs/aming.com-error_log" //錯誤日志
CustomLog "logs/aming.com-access_log" common //通路日志
mkdir /data/wwwroot/abc.com -p
mkdir /data/wwwroot/111.com -p
cat /data/wwwroot/111.com/index.php //網站預設的首頁就是index.php
<?php
echo "111.com"
?>
cat /data/wwwroot/abc.com/index.php
echo "abc.com";
/usr/local/apache2/bin/apachectl –t
/usr/local/apache2/bin/apachectl graceful
總結:
1.隻要conf/httpd.conf檔案裡的Include conf/extra/httpd-vhosts.conf打開虛拟主機生效。
那麼檔案的ServerName和Documentroot失效
3.虛拟主機一旦打開裡面可以定義很多個<VirtualHost *:80></VirtualHost>,每一個VirtualHost代表一個站點,就是一個虛拟機。都有一個對應的ServerName和Documentroot。比較特殊的就是預設虛拟主機,無論通路什麼域名(域名隻有不在ServerName出現)隻要解析到這個ip上,都會通路這個虛拟主機
本文轉自 蝦米的春天 51CTO部落格,原文連結:http://blog.51cto.com/lsxme/2051891,如需轉載請自行聯系原作者