Linux高级管理-基于域名的虚拟Web主机搭建
?客服机限制地址
????????通过 Require 配置项,可以根据主机的主机名或P地址来决定是否允许客户端访问。在httpd服 务器的主配置文件的<Location>,<Directory>、<Files>、<Limit>配置段中均可以使用Require 配置 项来控制客户端的访问。使用Require配置项时,需要设置客户机地址以构成完整的限制策略,地址 的形式可以是IP地址,网络地址、主机名或域名.使用名称‘all”时表示任意地址,限制策略的常用格式如下:
Require all granted:表示允许所有主机访问。
Require all denied:表示拒绝所有主机访问。????????
Require local:表示仅允许本地主机访问.
Require [not] host<主机名或域名列表>:表示允许或拒绝指定主机或域访问。
Require [not] ip<ip 地址或网段列表>:表示允许或拒绝指定P地址或网段访问。
?
例如,若只希望禁止来自两个内网网段192.168.0.0/24和 192.168.1.0/24的主机访问,但允许其他任何主机访问,可以使用如下限制策略。
实验案例:
实验环境:某公司的网站服务器使用的公网IP地址为192.168.55.220,并使用该IP地址注册了两个域名 www.bdgn.com和www.jbit.com.服务器中已经安装好了CentOS 7操作系统.并通过源码编译的 方式安装了Web服务器软件httpd-2.4.25,现需要对httpd服务进行配置,以支持同时运行这两个 Web站点。
需求描述:
>站点www.bdqn.com的网页文档存放在服务器的/var/www/html/bdondoc目录下。
>站点www.jbit.com的网页文档存放在服务器的/var/www/html/jbitdoc目录下。
>构建基于域名的虚拟主机服务器,用于支撑以上两个Web站点。?
>其中 www.jbit.com站点只对公司内部员工开放alan.agou,访问时需进行用户认证.
?
1.为虚拟主机提供域名主机
首先在服务器搭建DNS,服务器DNS指向自己
?在两个区域设置A记录
?
?
2.创建内部员工alan和ahou
[root@lgcllc ~]# cd /usr//local/httpd/
[root@lgcllc httpd]# bin/htpasswd -c /usr/local/httpd/conf/.awspwd agou
New password:
Re-type new password:
Adding password for user agou
[root@lgcllc httpd]# bin/htpasswd /usr/local/httpd/conf/.awspwd alan
New password:
Re-type new password:
Adding password for user alan
[root@lgcllc httpd]# cat /usr/local//httpd/conf/.awspwd
agou:$apr1$xICdRisg$p79JrwSb2O1mDc59JtoO//
alan:$apr1$2w1L8B6j$D5lw7GlI3FdLr/ktkU2Fp1
?
3.为虚拟主机准备网页文档
?
[root@lgcllc ~]# mkdir -p /var/www/html/bdandoc
[root@lgcllc ~]# mkdir -p /var/www/html/jbitdoc
[root@lgcllc ~]# echo "<h1>www.bdqn.com<h1>" > /var/www/html/bdqndoc/index.html
[root@lgcllc ~]# echo "<h1>www.jbit.com<h1>" > /var/www/html/jbitdoc/index.html
4.添加虚拟主机配置
创建独立的配置文件
设置bdqn和jbit虚拟站点
[root@lgcllc ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@bdqn.com
DocumentRoot "/var/www/html/bdqndoc"
ServerName www.bdqn.com
ErrorLog "logs/www.bdqn.com-error_log"
CustomLog "logs/www.bdqn.com-access_log" common
<Directory "/var/www/html">
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@jbit.com
DocumentRoot "/var/www/html/jbitdoc"
ServerName www.jbit.com
ErrorLog "logs/www.jbit.com-error_log"
CustomLog "logs/www.jbit.com-access_log" common
<Directory "/var/www/html">
AuthName "DocumentRoot"
AuthType Basic
AuthUserFile /usr/local/httpd/conf/.awspwd
Require valid-user
</Directory>
</VirtualHost>
加载独立的配置文件?
[root@lgcllc ~]# vim /usr/local/httpd/conf/httpd.conf
。。。。。。
Include conf/extra/httpd-vhosts.conf
重启后生效
[root@lgcllc ~]# systemctl restart httpd.service
5.验证结果
需要权限访问
登录授权用户后可访问
?
?
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!