A-A+

linux学习之路: apache的虚拟主机

2016年02月20日 站长资讯 暂无评论

在昨天的博客中,主要介绍了了apache的配置文件,在这个配置文件中,我们主要介绍了apache中的配置文件中的主要参数,其中有一段关于虚拟主机的参数我们没有说到,特意的将这段指令拿到今天来说。

所谓虚机主机:就是将一个web服务器做成多个站点来使用,一个apache服务来服务多个不同的站点。其实通俗的理解就是把一个web服务器当作多个web服务器的意思。

虚拟主机的类型:

1、基于ip的虚拟主机

例如:ip1:80

ip2:80

基于ip的虚拟主机ip地址不通,端口号(80)是相同的。

由于ipv4地址紧缺,因此一般不使用这是方式来构建虚拟主机

2、基于端口的虚拟主机

例如:ip:80

ip:8080

这种方式的虚拟主机,ip地址是相同的,但是端口号是不同的。一般的我们常说的web服务器的端口号是80,所以当你使用另一个端口号时,这会导致可能很多人不知道,因此也无法访问你的web服务器,一般的在互联网上这种方式也不常用。

3、基于域名的虚拟主机

例如 ip:80

ServerName: www.xiaoxiongboke.com

ip:80

ServerName: www.52tusiji.cn

基于域名的虚拟主机,ip地址和80端口是一样的,唯一不一样的是ServerName主机名不一样。使用基于域名的虚拟主机,该主机名必须能够被DNS解析的到,否侧会出错。所以要么修改本地的hosts文件,要么假设一台DNS服务器。在这里我直接修改本地的hosts文件,添加几条映射关系即可。这种方式的虚拟主机是使用最多的。

在搭建虚拟主机时需要注意的事项:

1、由于虚拟主机和物理主机(中心主机)不能同时生效,因此在搭建虚拟主机时,需要注销物理主机(中心主机),即在/etc/httpd/conf/httpd.conf文件中将DocumentRoot这一行注释掉即可。

2、启用虚拟主机,即apache配置文件中的NameVirtualHost *:80这一行

虚拟主机的定义

虚拟主机的定义使用

  1. <VirtualHost ip:port>  
  2. 这里面可以存放多个参数或者指令,形式与定义<Directory></Directory>一样  
  3. </VirtualHost>  

URL的定义

在apache的配置文件还有这样的一个容器

  1. <Location /server-info>  
  2.     SetHandler server-info  
  3.     Order deny,allow  
  4.     Deny from all  
  5.     Allow from .example.com  
  6. </Location>  

这个容器是用来定义URL,在:

  1. <Directory></Directory>  

这个容器中,定义的是本地路径,记住URL和本地路径不是一码事,只是写法上相同罢了。

标签:

给我留言