Apache虛擬主機配置(多個域名訪問多個目錄)
為了方便管理虛擬主機,我決定使用一種方法,那就是修改httpd-vhosts.conf文件。
第一步首先要使擴展文件httpd-vhosts.conf生效:
1. 打開 apache/conf/httpd.conf 文件
2. 找到 # Include conf/extra/httpd-vhosts.conf
3. 去掉前面的注釋符#號
4. 打開 apache/conf/extra/httpd-vhosts.conf
5. 添加以上的多端口或多域名代碼(這里以多域名為例):
6. 打開apache2/conf/extra/httpd-vhost.conf
在里面添加入下:
示例:
<VirtualHost 192.168.1.1:80>
ServerAdmin dason@sina.com (你的郵箱)
DocumentRoot /usr/local/apache2/htdocs/Joomla(此虛擬主機的根目錄)
ServerName www.abc.com(此處為域名)
ErrorLog /usr/local/apache2/htdocs/abc/error_log (日志)
TransferLog /usr/local/apache2/htdocs/abc/access_log (日志)
</VirtualHost>
1. 打開 apache/conf/httpd.conf 文件
2. 找到 # Include conf/extra/httpd-vhosts.conf
3. 去掉前面的注釋符#號
4. 打開 apache/conf/extra/httpd-vhosts.conf
5. 添加以上的多端口或多域名代碼(這里以多域名為例):
6. 打開apache2/conf/extra/httpd-vhost.conf
在里面添加入下:
示例:
<VirtualHost 192.168.1.1:80>
ServerAdmin dason@sina.com (你的郵箱)
DocumentRoot /usr/local/apache2/htdocs/Joomla(此虛擬主機的根目錄)
ServerName www.abc.com(此處為域名)
ErrorLog /usr/local/apache2/htdocs/abc/error_log (日志)
TransferLog /usr/local/apache2/htdocs/abc/access_log (日志)
</VirtualHost>
<VirtualHost 192.168.1.1:80>
ServerAdmin dason@sina.com (你的郵箱)
DocumentRoot /usr/local/apache2/htdocs/bbs (此虛擬主機的根目錄)
ServerName www.bbs.com (此處為域名)
ErrorLog /usr/local/apache2/htdocs/bbs/error_log (日志)
TransferLog /usr/local/apache2/htdocs/bbs/access_log (日志)
</VirtualHost>
ServerAdmin dason@sina.com (你的郵箱)
DocumentRoot /usr/local/apache2/htdocs/bbs (此虛擬主機的根目錄)
ServerName www.bbs.com (此處為域名)
ErrorLog /usr/local/apache2/htdocs/bbs/error_log (日志)
TransferLog /usr/local/apache2/htdocs/bbs/access_log (日志)
</VirtualHost>
注意:添加了虛擬主機之后必須重啟apache服務。
如果是服務器的話,直接訪問域名便可以訪問相應的虛擬主機網站了。
如果是做測試環境(我的便是測試環境),可將真機的hosts文件修改,使得測試域名和服務器(虛擬機)ip地址關聯,這樣在真機訪問域名,成光轉到相應的虛擬主機網站的時候即成功。