实验案例:基于域名的虚拟Web主机
- 实验环境
某公司的网络服务器使用的公网IP地址为192.168.100.20,并使用该IP地址注册了两个域名www.bdqn.com和www.jbit.com。服务器中已经安装好了Centos 7操作系统,并通过源码编译的方式安装了web服务器软件httpd-2.4.25,现需要对httpd服务进行配置,支持同时运行两个Web站点
- 需求描述
站点www.bdqn.com的网页文档存放在服务器的/var/www/html/bdqndoc目录下。
站点www.jbit.com的网页文档存放在服务器的/var/www/html/jbitdoc目录下。
构建基于域名的虚拟主机服务器,用于支持以上两个web站点。
其中www.jbit.com站点只对公司内部员工开放alan、agou,访问时需进行用户认证。
推荐步骤
- 为虚拟主机提供域名解析。
1)配置DNS主配置文件。
[root@centos02 ~]# vim /etc/named.conf
2)分别为bdqn,jbit配置正向解析。
[root@centos02 ~]# vim /var/named/bdqn.com.zone
3)配置DNS,并重启DNS服务,和网卡服务
[root@centos02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
[root@centos02 ~]# systemctl restart named
[root@centos02 ~]# systemctl restart network
4)开一台win7,配置ip地址,DNS指向DNS服务器,然后用客户端进行解析,这两个域名。
- 为虚拟主机准备网页文档。
1)创建虚拟站点目录,和bdqn,jbit的网站根目录
[root@centos02 ~]# mkdir -p /var/www/html
[root@centos02 ~]# mkdir -p /var/www/html/bdqndoc
[root@centos02 ~]# mkdir -p /var/www/html/jbitdoc
2)设置两个站点的网页主页。
[root@centos02 ~]# echo "2. www.bdqn.com " > /var/www/html/bdqndoc/index.html
[root@centos02 ~]# echo "2. www.jbit.com jiayou " > /var/www/html/jbitdoc/index.html - 配置并启动httpd服务器。
1)修改主配置文件支持虚拟主机
[root@centos02 ~]# vim /usr/local/httpd/conf/httpd.conf
387 # Virtual hosts
388 Include conf/extra/httpd-vhosts.conf
2)修改虚拟主机访问权限
[root@centos02 ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
<Directory “/var/www/html”>
order deny,allow
allow from all
3)配置基于域名的虚拟主机
[root@centos02 ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
4)添加虚拟主机的IP地址
[root@centos02 ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
NameVirtualHost 192.168.100.20:80
NameVirtualHost 192.168.100.20:80 - 在客户机中访问虚拟主机。
1)使用win7访问两个站点
2)为www.jbit.com站点配置用户认证
I. 创建身份验证的账户密码,验证的用户名字是alan
[root@centos02 ~]# /usr/local/httpd/bin/htpasswd -c /usr/local/httpd/htdocs/.password alan
New password:
Re-type new password:
Adding password for user alan
II. 添加用户,用户名字为agou
[root@centos02 ~]# /usr/local/httpd/bin/htpasswd /usr/local/httpd/htdocs/.password agou
New password:
Re-type new password:
Adding password for user agou
III. 配置httpd服务器,找到虚拟主机域名为jbit的,在它里面添加用户授权。
[root@centos02 jbitdoc]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
IV. 重启一下服务
[root@centos02 jbitdoc]# systemctl restart httpd
V. 验证,只有alan,agou两个用户可以使用。