基于域名的虚拟web主机

实验环境:

某公司的网站服务器使用的公网IP地址为192.168.100.150,并使用该IP地址注册两个域名www.bdqn.comwww.jbit.com。服务器中已经安好centos6.5的操作系统,并通过源码编译的方式安装了web服务器软件httpd-2.2.17,现需要对httpd服务进行配置,以支持同时运行这两个web站点。

拓扑:

需求描述:

? 站点www.bdqn.com的网页文档存放在服务器的/var/www/html/bdqndoc目录下。

? 站点www.jbit.com的网页文档存放在服务器的/var/www/html/jbitdoc目录下。

? 构建基于域名的虚拟主机服务器,用于支撑以上两个web站点

? 其中www.jbit.com站点只对公司内部员工开放。访问时需要进行用户认证

实验步骤

一:为虚拟主机提供域名解析

1) 搭建一台DNS服务器,负责解析域名www.bdqn.comwww.jbit.com

lqc_构建基于域名的虚拟主机_网站

修改DNS主配置文件,添加正向解析

lqc_构建基于域名的虚拟主机_服务器_02

编辑区域配置文件

lqc_构建基于域名的虚拟主机_虚拟主机_03

lqc_构建基于域名的虚拟主机_服务器_04

lqc_构建基于域名的虚拟主机_网站_05

重启DNS服务

lqc_构建基于域名的虚拟主机_虚拟主机_06

解析测试

lqc_构建基于域名的虚拟主机_网站_07

二:为虚拟主机准备网页文档

1) 创建/var/www/html/bdqndoc文件夹,作为网站www.bdqn.com的根目录。

2) 创建/var/www/html/jbitdoc文件夹,作为网站www.jbit.com的根目录。

lqc_构建基于域名的虚拟主机_虚拟主机_08

3) 在以上两个文件夹中建立index.html文件,编写不同的网页内容。

lqc_构建基于域名的虚拟主机_服务器_09

三:配置并启动httpd服务器

1) 编写独立的虚拟主机配置文件,并通过include配置项加载到httpd.conf文件中。

备份虚拟主机配置文件

lqc_构建基于域名的虚拟主机_虚拟主机_10

编辑虚拟主机配置文件

lqc_构建基于域名的虚拟主机_虚拟主机_11

lqc_构建基于域名的虚拟主机_网站_12

lqc_构建基于域名的虚拟主机_虚拟主机_13

修改web服务主配置文件

lqc_构建基于域名的虚拟主机_虚拟主机_14

去掉include前面的注释,将虚拟主机配置文件加载到主配置文件中

lqc_构建基于域名的虚拟主机_虚拟主机_15

lqc_构建基于域名的虚拟主机_服务器_16

2) 使用htpasswd工具创建用户认证数据文件,并添加授权用户alan,agou

lqc_构建基于域名的虚拟主机_服务器_17

3) 为目录/var/www/html/jbitdoc添加Directory区域,并设置用户访问授权。

lqc_构建基于域名的虚拟主机_网站_18

lqc_构建基于域名的虚拟主机_服务器_19

4) 重启httpd服务器程序,并确认端口的监听状态

lqc_构建基于域名的虚拟主机_服务器_20

四:在客户机中访问虚拟主机

1) 分别访问站点www.bdqn.comwww.jbit.com,应能看到不用的页面内容。

lqc_构建基于域名的虚拟主机_虚拟主机_21

2) 在访问站点www.jbit.com时,会弹出用户认证窗口,通过认证后才被允许访问。

lqc_构建基于域名的虚拟主机_网站_22

lqc_构建基于域名的虚拟主机_网站_23

总结:

1. httpd服务通过orderallow fromdeny from配置项实现客户机地址访问控制。

2. httpd服务通过AuthNameAuthTypeAuthUserFilerequire valid-user配置项实现目录的用户授权。

3. 为网站目录设置用户授权时,需要先通过htpasswd工具创建用户认证数据文件。

4. Httpd服务支持三种类型的虚拟虚拟web主机,分别是基于域名,基于IP地址,基于端口的虚拟主机。