httpd2.4 应用

练习:  (1)基于主机名实现三个虚拟主机

    (2) 每虚拟主机使用独立的访问日志和错误日志

(3) 第三个虚拟主机的/admin要进行用户访问认证 

(4) 在第二个虚拟主机上提供/status;

(5) 在第三个虚拟主机提供路径别名/bbs,访问其它文件系统路径;

(6) 尝试使用混合类型的虚拟主机:

  基于IP,PORT和ServerName

练习2: 使用脚本实现以上功能;

每虚拟使用单独的配置文件;

脚本可接受参数,参数虚拟主机名称;

(1)基于主机名实现三个虚拟主机

基于FQDN的虚拟主机不再需要NameVirtualHost指令,其他并没变化

注意:任意目录下的页面只有显式授权才能被访问

 1,vim /etc/httpd/conf/httpd.conf

   找到中心主机,并将其注释掉

  blob.png  

 2,创建放置3台虚拟主机的目录 

   mkdir -pv /apps/{a.com,b.net,c.org}/htdocs

 3,分别编写三台虚拟主机的首页文件,以为后面验证 

   vim /apps/a.com/htdocs/index.html

    a

   vim /apps/b.net/htdocs/index.html

    b

   vim /apps/c.org/htdocs/index.html

    c

 4,编写基于FQDN的虚拟主机的配置文件

   vim /etc/httpd/conf.d/virtualhost.conf

   blob.png

   

  5,检查语法 httpd -t

      Syntax OK

  6,重载服务 systemctl reload httpd.service 

  7,在真机的host文件添加:

   blob.png

   

   10.1.252.172 www.a.com

   10.1.252.172 www.b.net

   10.1.252.172 www.c.org

  8,在centos7中添加

    vim /etc/hosts

     10.1.252.172 www.a.com

      10.1.252.172 www.b.net

      10.1.252.172 www.c.org

  9,验证

    blob.png

    blob.png

    blob.png

    blob.png

    

(2) 每虚拟主机使用独立的访问日志和错误日志

    编辑自定义的虚拟主机配置文件

    vim /etc/httpd/conf.d/virtualhost.conf

    以下以a为例,在原基础上添加两行。b,c方法同样,记得把b,c的路径变换

   blob.png

     检查语法 httpd -t

     重启服务 systemctl restart httpd.service    blob.png

   

(3) 第三个虚拟主机的/admin要进行用户访问认证 

    将配置文件的c改为

    blob.png

    检查语法 httpd -t

     重启服务 systemctl restart httpd.service    

     blob.png

(4) 在第二个虚拟主机上提供/status;

   blob.png

     检查语法 httpd -t

     重启服务 systemctl restart httpd.service    

     blob.png

(5) 在第三个虚拟主机提供路径别名/bbs,访问其它文件系统路径;

    

(6) 尝试使用混合类型的虚拟主机:

  基于IP,PORT和ServerName

    

示例:不同ip,相同端口。相同ip,不同端口的混合使用

ifconfig eth0:0 10.1.252.171

[root@centos6 conf]# vim /etc/httpd/conf.d/vhosts.conf 

删除Listen 808

<VirtualHost 10.1.252.168:80>

   ServerName  www.a.com

   DocumentRoot "/www/a.com/htdocs"

</VirtualHost>

<VirtualHost 10.1.252.171:80>

   ServerName  www.b.net

   DocumentRoot "/www/b.net/htdocs"

</VirtualHost>

<VirtualHost 10.1.252.168:8080>

   ServerName  www.c.org

   DocumentRoot "/www/c.org/htdocs"

</VirtualHost>

检查语法:httpd -t

重启服务:service httpd restart

查看3个端口是否都在监听:ss -tnl

网站:10.1.125.168      10.1.252.171     10.1.252.168:8080

   

原创文章,作者:wutianyou,如若转载,请注明出处:http://www.178linux.com/49713

(0)
wutianyouwutianyou
上一篇 2016-10-09 09:02
下一篇 2016-10-09 09:02

相关推荐

  • python agent应用

    BaseHTTPServer 模块说明 class BaseHTTPServer.HTTPServer(server_address, RequestHandlerClass) server_address : 是一个服务器 (ip, port)元组。 RequestHandlerClas…

    Linux干货 2016-09-19
  • LVS工作原理浅析

    一、什么是LVS         LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。         LVS集群采用IP负载均衡技术和基于内容…

    Linux干货 2016-11-29
  • yum初步入门

                             yum工具是为提高RPM软件安装性而开发的一种软件包管理器,是由pyt…

    Linux干货 2015-04-01
  • 一次简单的内核编译(二)

      前言:     此次编译是继一次简单的内核编译(一)进行操作编译的,请先查看第一篇再来看此片文章 一、使用busybox代替自己制作的init脚本,实现内核启动;  1、在这里我们使用静态编译busybox,所以需要先安装glibc-static依赖包,如果不安装会报错     2、解…

    Linux干货 2015-06-01
  • LB-lvs

    Linux Cluster: Cluster:计算机集合,为解决某个特定问题组合起来形成的单个系统; Linux Cluster类型: LB:Load Balancing,负载均衡; HA:High Availiablity,高可用; A=MTBF/(MTBF+MTTR) (0,1):90%, 95%, 99%, 99.5%, 99.9%, 99.99%, …

    Linux干货 2017-06-25
  • shell通配符与正则表达式

        通配符是系统level的 而正则表达式需要相关工具的支持: egrep, awk, vi, perl。在文本过滤工具里,都是用正则表达式,比如像awk,sed等,是针对文件的内容的。通配符多用在文件名上,比如查找find,ls,cp,等等。 1.通配符       (1)…

    Linux干货 2016-02-28