日期:2014-05-16  浏览次数:20711 次

apache虚拟主机设置

?

apache 虚拟主机设置有两类

一:基于ip的配置 一台主机绑定了多个ip,每个ip设置一个虚拟主机

如一台主机有10.13.129.163和192.168.1.9两个ip

则配置为:

<VirtualHost 10.13.129.163>
ServerName localhost? ##这里的ServerName好像没什么用
DocumentRoot D:/apache/htdocs/dir1
</VirtualHost>

?

<VirtualHost 192.168.1.9>
ServerName localhost
DocumentRoot D:/apache/htdocs/dir2
</VirtualHost>

则通过http://10.13.129.163/访问到的是dir1下的文件,通过http://192.168.1.9/访问到的是dir2下的文件

?

二:基于域名的配置 一台主机的一个ip上可以配置多个域名的虚拟主机

如两个域名test1.xuelong.com test2.xuelong.com都通过dns指向10.13.129.163

则配置这两个域名对应的虚拟主机如下:

##基于域名的虚拟主机必须通过此指令指定域名主机所在的范围,无此指定则认为是基于ip的配置

NameVirtualHost 10.13.129.163?

<VirtualHost 10.13.129.163>
ServerName test1.xuelong.com? ##这里的ServerName用来区分域名
DocumentRoot D:/apache/htdocs/dir1
</VirtualHost>

?

<VirtualHost 10.13.129.163>
ServerName test2.xuelong.com
DocumentRoot D:/apache/htdocs/dir2
</VirtualHost>

则通过http://test1.xuelong.com/访问到的是dir1下的文件,通过http://test2.xuelong.com/访问到的是dir2下的文件

?

如果未匹配到域名,如http://test3.xuelong.com/,则第一个配置为默认的.