您的位置:首页 > 运维架构 > Apache

Apache虚拟主机的配置

2013-10-21 12:05 302 查看
Apache虚拟主机的配置可分为三种:基于端口、基于ip和基于域名的虚拟主机。下面我们分别做个简单介绍。

我们以Windows平台下的httpd-2.2.21-win32-x86-no_ssl.msi
版本为例。

一、基于端口的虚拟主机设置

1、修改监听端口

打开Apache配置文件httpd.conf,添加要使用的监听端口

如:

Listen 80
Listen 81
Listen 82

以上设置的含义为监听80、81、82这几个端口(注意不能和其它软件的端口有冲突)。

2、更改虚拟主机设置:

打开Apache配置文件httpd.conf,查找 Include conf/extra/httpd-vhosts.conf,将前面的#号去掉。

修改虚拟主机配置文件 Apache/Conf/extra/httpd-vhosts.conf,清除或注释掉原先所有内容,放置下面内容

<VirtualHost *:80>
DocumentRoot "d:/WAMP/WWW"
</VirtualHost>
<VirtualHost *:81>
DocumentRoot "d:/WAMP/test1"
</VirtualHost>
<VirtualHost *:82>
DocumentRoot "d:/WAMP/test2"
</VirtualHost>

3、测试:

打开浏览器分别输入 http://localhost、http://localhost:81、http://localhost:82 可访问不同网站

二、基于IP的虚拟主机设置

基于 IP 的虚拟主机是指为每个 Web 站点配置不同的 IP 地址。通常用于有多块物理网卡,或者配置了多个虚拟 IP 的 Web 服务器。

一个网卡绑定多个IP地址,打开“控制面板”->“网络连接”->“本地连接”->“点右键属性”->从“常规”选项卡中找到“Internet 协议(TCP/IP)“->"点击属性”->点下面的“高级”按钮,在高级中的“IP设置-IP地址” 栏下点“添加”按钮,输入你想绑定的IP地址即可。如果之前本地连接IP地址是 192.168.1.2,那么继续添加 192.168.1.3、192.168.1.4、192.168.1.5 等等。用这些IP区分不同的虚拟主机。

我们这里不一一绑定了,因为所有127开头的都会指向本机,如 127.0.0.1 ~ 127.0.0.255 等等。所以我们用这些地址做测试。这些地址只能本机访问。

1、指定监听端口

打开Apache配置文件httpd.conf,指定监听端口

如:

Listen 80

以上设置的含义为监听80端口

2、更改虚拟主机设置:

打开Apache配置文件httpd.conf,查找 Include conf/extra/httpd-vhosts.conf,将前面的#号去掉。

修改虚拟主机配置文件 Apache/Conf/extra/httpd-vhosts.conf,清除或注释掉原先所有内容,放置下面内容

<VirtualHost 127.0.0.1:80>
DocumentRoot "d:/WAMP/WWW"
ServerName 127.0.0.1:80
</VirtualHost>
<VirtualHost 127.0.0.2:80>
DocumentRoot "d:/WAMP/test1"
ServerName 127.0.0.2:80
</VirtualHost>
<VirtualHost 127.0.0.3:80>
DocumentRoot "d:/WAMP/test2"
ServerName 127.0.0.3:80
</VirtualHost>

3、测试:

打开浏览器分别输入 http://127.0.0.1、http://127.0.0.2、http://127.0.0.3 可访问不同网站

三、基于域名的虚拟主机设置

1、修改hosts文件

以Windows 2003为例,在C:\WINDOWS\system32\drivers\etc 下有个hosts文件。

这个hosts的作用就是将一些常用的网址域名与其对应的IP地址建立关联,当用户在浏览器中输入一个网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。

打开hosts文件,一般已有“127.0.0.1 localhost” ,添加你要增加的域名,如下:

127.0.0.1       www.test.com
127.0.0.1       www.test1.com
127.0.0.1       www.test2.com

2、指定监听端口

打开Apache配置文件httpd.conf,指定监听端口

如:

Listen 80

以上设置的含义为监听80端口

3、更改虚拟主机设置:

打开Apache配置文件httpd.conf,查找 Include conf/extra/httpd-vhosts.conf,将前面的#号去掉。

修改虚拟主机配置文件 Apache/Conf/extra/httpd-vhosts.conf,清除或注释掉原先所有内容,放置下面内容

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot "d:/WAMP/WWW"
ServerName www.test.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "d:/WAMP/WWW/test1"
ServerName www.test1.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "d:/WAMP/WWW/test2"
ServerName www.test2.com
</VirtualHost>

4、测试:

打开浏览器分别输入 http://www.test.com、http://www.test1.com、http://www.test2.com 可访问不同网站。

四 虚拟主机配置文件参数说明

<VirtualHost *:*>
ServerAdmin          # 管理员的E-mail地址
DocumentRoot         # 虚拟主机的根目录
ServerName           # 虚拟主机的名称端口
ErrorLog             # 虚拟主机的错误日志路径
Customlog            # 虚拟主机的访问日志路径
</VirtualHost>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: