在Linux中怎样实现虚拟主机
要使一台服务器向众多的个人或部门提供WWW服务是一件比较简单的事。但是,用户只能使用www.yourdoman.com/username作为自己的主页地址,是不是比较麻烦呢?这就要使用到虚拟主机。下面介绍两种方式来实现虚拟主机,在介绍虚拟主机之前,我们先作以下假设:
1. 本机的IP地址为:211.65.0.252 ,域名为:host.domain.com
2. 另外还有一个IP为:211.65.0.253,域名为:test.domain.com
另外,该机器目前只有一个IP:211.65.0.252,域名:host.domain.com
一、基于多IP地址的虚拟主机
使用这种方式,你首先要具有多个IP地址。当然,在局域网中你很容易办到。这种方式的虚拟主机设置如下:
1.将211.65.0.253绑定到网卡上
怎么绑定我想不需要再叙述,实在不会的,请使用netconf命令,添加一个IP地址。
2.修改DNS
在DNS中添加一个主机test.domain.com,IP为:211.65.0.253。没有配置过DNS的朋友可能会遇到点麻烦。不过,你可以使用netconf来配置,在窗口下配置要容易一点。
3.修改Apache的配置文件httpd.conf
在httpd.conf文件最后添加如下内容:
ServerAdmin [email protected] //设置管理员的信箱
DocumentRoot /wwwpath/test //设置主页位置
ServerName test.domain.com //设置域名
ErrorLog /wwwpath/test/error_log //设置出错信息的log文件
Customlog /wwwpath/test/access_log common //访问log文件
以上假设你将用户的主页放在/wwwpath/test目录中。当然,你可以根据自己的需要修改它。
4.将Apache重启
apachectl stop
apachtcelt start
为了测试虚拟主机是否设置成功,你可以建立一个HTML文件来测试一下。
二、基于名称的虚拟主机
如果你的主机只有一个IP地址,那你只能使用这种方法。那么,这种方法的设置如下:
1.修改DNS
方法与前面相似,只是test.domain.com的IP与host.domain.com的IP一样:211.65.0.252。
2.修改httpd.conf文件
首先,你要添加:
NameVirtualHost 211.65.0.252
然后,依次添加:
ServerAdmin [email protected] //设置管理员的信箱
DocumentRoot /wwwpath/ //Apache默认主页位置
ServerName host.domain.com //设置域名
以上的设置和我们的虚拟主机没有关系,是对主机默认主页进行重新定义。如果你不重新定义host.domain.com主页,那么,该主页将会被以下的设置所取代。所以,要使host.domain.com的主页仍能使用你必须在定义其它虚拟主机之前重新按定义虚拟主机的方法重新定义一遍。接着我们来定义虚拟主机test.domain.com:
ServerAdmin [email protected] //设置管理员的信箱
DocumentRoot /wwwpath/test //设置主页位置
ServerName test.domain.com //设置域名
ErrorLog /wwwpath/test/error_log //设置出错信息的log文件
Customlog /wwwpath/test/access_log common //访问log文件
这与基于IP的定义方式相同,只是IP地址必须是主机IP(也只能是,因为只有一个IP)。
3.重启Apache
设置虚拟主机就是这么简单。当然,你一定要申请域名才行。
发布人:netbull 来自:it365.net