Apache服务器高级设置指南(4)

三、 虚拟主机(Virtual Host)的设置

作为系统管理员,若你只有一个IP地址,却有好几个域名,又要求访问每个域名都要看到不同的内容,那怎么办?总不至于为每个域名都配上一台服务器吧。这就要采用虚拟主机(Virtual Host)技术,幸好Apache就支持这种功能。虚拟主机有两种方式:IP-Based(基于IP式)、Name-based(基于域名式)。IP-Based指的是一个域名对应一个IP地址,而Name-based指的是多个域名对应一个IP地址。

虚拟主机的设置并不复杂,只要在httpd.conf文件中加入相应的命令就行。

下面是一个Name-based(基于域名式)虚拟主机的httpd.conf例子(编者注:因篇幅原因,我们这只给出了相关部分,全文见www.swm.com.cn)。IP为:192.168.188.20,两个域名分别是long.com.cn、short.com.cn。

** httpd.conf: **

NameVirtualHost 192.168.188.20

ServerAdmin [email protected]
ServerName www.long.com
DocumentRoot /home/httpd/long/html

ErrorLog logs/error_log
TransferLog logs/access_log

ServerAdmin [email protected]
ServerName www.short.com
DocumentRoot /home/httpd/short/html
ErrorLog logs/short.com-error_log
TransferLog logs/short.com-access_log

NameVirtualHost命令指定在哪个IP上设置虚拟主机

在VirtualHost命令中进行各个主机的具体设置。

ServerAdmin命令是设定当WWW Server执行有问题时,会将ServerAdmin所设置的E-mail传送到浏览器,让使用者用该E-mail与系统管理员联系。

ServerName命令是设置WWW Server的域名。

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus