首页 > 代码库 > linux学习之路之apache的虚拟主机

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

在昨天的博客中,主要介绍了了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.a.com

          ip:80

          ServerName:www.b.net         

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



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

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

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


虚拟主机的定义

虚拟主机的定义使用

<VirtualHost ip:port>

这里面可以存放多个参数或者指令,形式与定义<Directory></Directory>一样

</VirtualHost>


URL的定义

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

<Location /server-info>

    SetHandler server-info

    Order deny,allow

    Deny from all

    Allow from .example.com

</Location>

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











本文出自 “linux学习之路” 博客,谢绝转载!

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