1,虚拟目录

Httpd  虚拟目录 便于网站管理和维护,内容分类。例如;

hhtpd://www.benet.com/news  新闻

Httpd://www.benet.com/edu   学习

以redhat6.5系统为例进行配置(系统默认自带httpd服务),首先修改httpd.conf配置文件 ,

(1)建立一个web站点www.benet.com

vim  /etc/httpd/conf/httpd.conf

 

101

102


 

103

添加站点首页文档index.html

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第1张图片

104

(2)并搭建一个DNS服务,解析域名。

安装bind软件包

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第2张图片

107

vim /etc/named.conf

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第3张图片

 

  vim /etc/named.rfc1912.zones

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第4张图片

 





108

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第5张图片

10

在浏览器输入域名www.benet.com可以看到刚才修改的网页信息。






Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第6张图片

(3)设置虚拟目录

在httpd.conf配置文件中包含一句话;Include conf.d/*.conf 表明httpd除了主配置文件还包含有conf.d/目录下的配置文件,因此我们可以在/etc/httpd/conf.d目录下单独创建一个虚拟目录的配置文件。

vim /etc/httpd/conf/httpd.conf  

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第7张图片

3

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第8张图片

创建虚拟目录站点,并为虚拟目录准备网页文档

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第9张图片

重启httpd服务,在浏览器输入www.benet.com/test查看虚拟目录的首页,

service httpd restart

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第10张图片

2,用户授权访问

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第11张图片

以前面设置虚拟目录为基础,我们给虚拟目录的网页进行用户授权限制。

(1)修改虚拟目录的配置文件vdir.conf

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第12张图片

(2)创建用户认证数据文件

httpd的基本认证通过校验用户名,密码组合来判断是否允许用户访问。授权访问的用户帐号需要事先建立,并保存在固定的数据文件中。使用专门的htpasswd工具程序,可以创建授权用户数据文件,并维护其中的用户帐号。

使用htpasswd工具时必须指定用户数据文件的位置,添加-c选项表示新建此文件,根据刚才的配置文件设定,新建的用户数据文件位置指定为/etc/httpd/user

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第13张图片

(3)验证用户访问授权

当再次访问www.benet.com/test网页时,浏览器会首先弹出认证对话框,只有输入正确的用户名和密码才可以访问页面

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第14张图片

3,基于域名的虚拟主机

使用一台httpd服务器搭建两个虚拟web主机www.benet.com和www.accp.com ,ip地址为192.168.30.15

(1)为虚拟主机提供域名解析

现实工作中需要向DNS服务提供商注册各虚拟web站点的域名,以便当访问其中任何一个虚拟站点时,最终访问的都是同一个ip地址,在实验中我们在一台主机上搭建DNS服务。

以刚才的实验为基础我们在配置文件中再添加accp.com区域,以及数据库文件accp.com.zone。其中里面的设置相同“www--->192.168.30.15”。其中关键的配置步骤如下;

vim /etc/named.rfc1912.zones

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第15张图片








9

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第16张图片

10

(2)创建虚拟主机配置文件vhost.conf

在/etc/httpd/conf.d目录下创建vhost.conf文件

cd /etc/httpd/conf.d

vim vhost.conf

使用NameVirtualHost配置项指定提供虚拟主机服务的ip地址,

使用……..区域配置,为每一个虚拟web主机建立独立的配置内容,其中包括管理员邮箱,网页根目录,网站名称,日志文件存放位置

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第17张图片

(3)根据配置文件设定为各虚拟web创建站点以及网页文档





Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第18张图片  

(4)在客户端打开浏览器访问虚拟web主机

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第19张图片

 

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第20张图片

4,基于端口的虚拟主机

基于端口的虚拟主机通常只用于同一个web站点,其针对的网站名称,ip地址往往是相同的,但通过不同的TCP端口来提供访问不同网页内容的服务入口。在浏览器访问非80端口时需明确指出服务器的端口号。如访问http://www.benet.com:8080/ 。

以刚才web服务www.benet.com为基础,添加一个8080端口的虚拟web服务

将监听端口修改为8080,

指定网页根目录为/opt/benet8080   其余配置不变。

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第21张图片

为8080端口的虚拟主机创建站点以及网页文档

15

在主配置文件httpd.conf中加入监听地址 Listen 192.168.30.15:8080


17

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第22张图片

打开客户端浏览器访问www.benet.com:8080虚拟网页内容

Apache配置与应用,虚拟目录;访问控制;虚拟Web主机(多域名;多端口),_第23张图片

Apache 一台服务器上搭建多网站(虚拟主机)  这种方式只适用于中小型企业,流量少,负载小