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

相关推荐

  • N26 第二周

    本周学习了: linux的目录层级结构、常见文件类型、bash基本特性、文件的基本管理命令、globbing文件通配符、用户管理命令 开始作业! 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。    文件管理命令有:ls,cp,mv,pwd,mkdir,rmdir,touch  …

    Linux干货 2017-01-12
  • Linux cluster集群全讲解

                     Linux cluster集群 Linux cluster(集群): cluster:计算机组合,为解决某个特定问题组合起来形成的单个系统;   Linux Cluster类型:    LB:Load Balancing,负载均衡;    HA:High Availiablity,高可用;    A=MTBF(平均无故障时长…

    2016-11-18
  • http2

    练习:     (1)基于主机名实现三个虚拟主机     (2) 每虚拟主机使用独立的访问日志和错误日志     (3) 第三个虚拟主机的/admin要进行用户访问认证     (4) 在第二个虚拟主…

    Linux干货 2016-10-09
  • find命令详解

    find命令是用来在给定的目录下查找符合给定条件的文件   find [OPTIONS] [查找起始路径] [查找条件] [处理动作]   一、OPTIONS参数     -P、-L、-H:控制软连接的对待方式,用的不多。不介绍了   二、查找路径     就是个目录路径,相对和绝对都可以。   三、查找条件     (一)、根据名称查找       -na…

    Linux干货 2016-09-19
  • rsyslog, mysql, loganalyzer联合实现

    一. rsyslog简介 rsyslog是一个自由软件, 是GPL的lincesed增强的syslogd. 它提供了Mysql和完全可配置的输出格式的支持. 1. 日志信息格式:      <优先级>时间戳 主机名 模块名/级别/信息摘要:内容      <priority>…

    Linux干货 2016-10-24
  • 文本处理工具和shell脚本基本编程

    文本处理工具 grep 对文本进行搜索获取我们想要的行(关键信息) egrep 支持扩展正则表达式的grep fgrep 快速搜索不支持正则    -v 取反  找出不包含“pattern”的行  -i 忽略字符的大小写  -n 显示行号  -c 显示统计到的行数,等同于wc -l  -o…

    2017-04-09