---恢复内容开始---

9、日志设定

错误日志:

ErrorLog logs/error_log //这里使用了相对路径,相对于/etc/httpd/路径

LogLevel warn  //定义日志记录级别,指明记录到那个级别,那么这个级别更高的日志级别都会被一并记录

日志级别:debug, info, notice, warn, error, crit, alert, emerg(默认是warn)

访问日志:

CustomLog logs/access_log combined  //conbined是日志格式,就是下面

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

%h:客户端IP地址;

%l: Remote logname (from identd, if supplied). “-”表示为空;

%u: Remote user,基于httpd的协议的basic或digist认证所实现的用户登陆(from auth; may be bogus if return status (%s) is 401);大多数为空

%t:Time the request was received (standard english format),服务器收到请求的时间;

%r:First line of request,请求报文的首行信息(method url version);

%>s: 响应状态码;status code

%b: 响应报文的大小,单位是字节,不包括响应报文首部;

%{Referer}i:请求报文当中"referer"首部的值;当前资源的访问入口,即从哪个页面中的超链接跳转而来;referer为空表示是从浏览器直接键入的,不是从超链接跳转的

%{User-Agent}i:请求报文当中"User-Agent"首部的值;即发出请求用到的应用程序;

详情:http://httpd.apache.org/docs/2.2/mod/mod_log_config.html#formats

示例:192.168.108.1 - - [31/May/2018:22:11:15 +0800] "GET / HTTP/1.1" 403 283 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"

10、路径别名

DocumentRoot "/www/htocs"

http://www.magedu.com/download/bash-4.4.2-3.el6.x86_64.rpm

路径映射:--> /www/htdocs/download/bash-4.4.2-3.el6.x86_64.rpm

 Alias  /URL/ "/PATH/TO/SOMEDIR/"       //URL是原路径,后面为别名路径// 别名指访问一个路径时,这个路径应该在DocumentRoot下,但却被定向到别的位置:

    示例:

  #mkdir -pv /www/htdocs

  #cd !$

  #mkdir bbs

  #vim /www/htdocs/bbs/index.html   //为bbs目录下创建网页添加内容  Page at /bbs,此时在页面中是无法访问的

  #vim /etc/httpd/conf.d/httpd.conf    //修改

Alias /bbs/ "/forum/htdocs" //定义bbs别名为/forum/htdocs

http://www.magedu.com/bbs/index.html

别名路径为:--> /forum/htdocs/bbs/   /在根目录下创建的forum,这里跟DocumentRoot没有关系

11、设定默认字符集

AddDefaultCharset UTF-8  //设定默认字符集

GBK, GB2312, GB18030  //这3个都是国标中文字符编码

12、基于用户的访问控制(重要)

1、认证质询:

WWW-Authenticate:响应码为401,拒绝客户端请求,并说明要求客户提供账号和密码;

2、认证:

Authorization:客户端用户填入账号和密码后再次发送请求报文;认证通过,则服务器发送响应的资源;

认证类型:

basic:明文认证

digest:消息摘要(经过md5加密)

安全域:需要用户认证后方能访问的路径;

应该通过名称对其进行标识,并用于告知用户认证的原因;

用户的账号和密码存储于何处?

虚拟账号:仅用于访问某服务时用到的认证标识;

存储://虚拟账号存储地方

文本文件

SQL数据库

ldap//轻量目录访问协议

nis

基于IP添加虚拟主机

第一步:先在httpd的主配置文件中添加配置

#vim /etc/httpd/conf/httpd.conf  //在主配置文件的最后一行添加两个虚拟主机的配置文件

<VirtualHost 192.168.108.160:80>

ServerName web1.magedu.com

DocumentRoot "/vhosts/web1/htdocs"

</VirtualHost>

<VirtualHost 192.168.108.161:80>

ServerName web2.magedu.com

DocumentRoot "/vhosts/web2/htdocs"

</VirtualHost>

#httpd -t    或者   #service httpd configtest   //可以查看主配置文件语法是否正确

第二步:

#mkdir /vhosts/{web1,web2,web3,web4}/htdocs -pv  //添加虚拟主机的 DocumentRoot

第三步:为虚拟主机配置访问页面

#vim /vhosts/web1/htdocs/index.html    添加:Page at web1

#vim /vhosts/web2/htdocs/index.html    添加:Page at web2

用浏览器输入网址192.168.108.160/161就可以访问了

---恢复内容结束---

9、日志设定

错误日志:

ErrorLog logs/error_log //这里使用了相对路径,相对于/etc/httpd/路径

LogLevel warn  //定义日志记录级别,指明记录到那个级别,那么这个级别更高的日志级别都会被一并记录

日志级别:debug, info, notice, warn, error, crit, alert, emerg(默认是warn)

访问日志:

CustomLog logs/access_log combined  //conbined是日志格式,就是下面

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

%h:客户端IP地址;

%l: Remote logname (from identd, if supplied). “-”表示为空;

%u: Remote user,基于httpd的协议的basic或digist认证所实现的用户登陆(from auth; may be bogus if return status (%s) is 401);大多数为空

%t:Time the request was received (standard english format),服务器收到请求的时间;

%r:First line of request,请求报文的首行信息(method url version);

%>s: 响应状态码;status code

%b: 响应报文的大小,单位是字节,不包括响应报文首部;

%{Referer}i:请求报文当中"referer"首部的值;当前资源的访问入口,即从哪个页面中的超链接跳转而来;referer为空表示是从浏览器直接键入的,不是从超链接跳转的

%{User-Agent}i:请求报文当中"User-Agent"首部的值;即发出请求用到的应用程序;

详情:http://httpd.apache.org/docs/2.2/mod/mod_log_config.html#formats

示例:192.168.108.1 - - [31/May/2018:22:11:15 +0800] "GET / HTTP/1.1" 403 283 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"

10、路径别名

DocumentRoot "/www/htocs"

http://www.magedu.com/download/bash-4.4.2-3.el6.x86_64.rpm

路径映射:--> /www/htdocs/download/bash-4.4.2-3.el6.x86_64.rpm

别名指访问一个路径时,这个路径应该在DocumentRoot下,但却被定向到别的位置:

            Alias  /URL/ "/PATH/TO/SOMEDIR/"       //URL是原路径,后面为别名路径

示例:

Alias /bbs/ "/forum/htdocs" //定义bbs别名为/forum/htdocs

http://www.magedu.com/bbs/index.html

别名路径为:--> /forum/htdocs/bbs/   /在根目录下创建的forum,这里跟DocumentRoot没有关系

11、设定默认字符集

AddDefaultCharset UTF-8  //设定默认字符集

GBK, GB2312, GB18030  //这3个都是国标中文字符编码

12、基于用户的访问控制(重要)

1、认证质询:

WWW-Authenticate:响应码为401,拒绝客户端请求,并说明要求客户提供账号和密码;

2、认证:

Authorization:客户端用户填入账号和密码后再次发送请求报文;认证通过,则服务器发送响应的资源;

认证类型:

basic:明文认证

digest:消息摘要(经过md5加密)

安全域:需要用户认证后方能访问的路径;

应该通过名称对其进行标识,并用于告知用户认证的原因;

用户的账号和密码存储于何处?

虚拟账号:仅用于访问某服务时用到的认证标识;

存储://虚拟账号存储地方

文本文件

SQL数据库

ldap//轻量目录访问协议

nis

基于IP添加虚拟主机

第一步:先在httpd的主配置文件中添加配置

#vim /etc/httpd/conf/httpd.conf  //在主配置文件的最后一行添加两个虚拟主机的配置文件

<VirtualHost 192.168.108.160:80>

ServerName web1.magedu.com

DocumentRoot "/vhosts/web1/htdocs"

</VirtualHost>

<VirtualHost 192.168.108.161:80>

ServerName web2.magedu.com

DocumentRoot "/vhosts/web2/htdocs"

</VirtualHost>

  #httpd -t    或者   #service httpd configtest   //可以查看主配置文件语法是否正确

第二步:

   #mkdir /vhosts/{web1,web2,web3,web4}/htdocs -pv  //添加虚拟主机的 DocumentRoot

第三步:为虚拟主机配置访问页面

  #vim /vhosts/web1/htdocs/index.html    添加:Page at web1

  #vim /vhosts/web2/htdocs/index.html    添加:Page at web2

  用浏览器输入网址192.168.108.160/161就可以访问了

示例2:基于port

    修改主配置文件,G跳转到最后一行

<VirtualHost 192.169.108.161:80>

ServerName web2.magedu.com

DocumentRoot "/vhosts/web2/htdocs"

</VirtualHost>

<VirtualHost 192.168.108.161:8080>

ServerName web3.magedu.com

DocumentRoot "/vhosts/web3/htdocs"

</VirtualHost>

    这里添加了8080端口,上面的Listen也需要监听8080端口

Listen 8080

# vim /vhosts/web3/htdocs/index.html  //给web3添加页面

    这里必须重启httpd,因为这里改变了端口,reload已经不起作用了

    在浏览器中键入http://192.168.108.161:8080就可以访问了

示例3:基于hostname

首先需要启用 NameVirtualHost *:80,改为 NameVirtualHost 192.168.108.160:80,要和下面<VittualHost>保持一致,表示基于主机名的虚拟主机,httpd2.2需要修改,httpd2.4就不需要了

VirtualHost 192.168.108.160:80>
   ServerName web1.magedu.com
   DocumentRoot "/vhosts/web1/htdocs"
 </VirtualHost>

<VirtualHost 192.168.108.160:80>
   ServerName web2.magedu.com
   DocumentRoot "/vhosts/web2/htdocs"
 </VirtualHost>

<VirtualHost 192.168.108.161:80>
   ServerName web3.magedu.com
   DocumentRoot "/vhosts/web3/htdocs"
 </VirtualHost>

此时在浏览器中键入web1.magedu.com就可以访问web1 的页面,但是需要解析

这里就利用另外一个主机192.168.108.159进行解析

#vim /etc/hosts

192.168.108.160 web1.magedu.com
 192.168.108.160 web2.magedu.com
 192.168.108.161 web3.magedu.com

再利用命令curl进行解析,均有相应

#curl web1.magedu.com

#curl web2.magedu.com

#curl web3.magedu.com

  每个虚拟主机都可以定义自己的日志

VirtualHost 192.168.108.160:80>
   ServerName web1.magedu.com
   DocumentRoot "/vhosts/web1/htdocs"

  CustomLog logs/web1_access_log combined  //这里logs是相对路径  在#ls /var/log/httpd,建议使用单独日志

</VirtualHost>

<VirtualHost 192.168.108.160:80>
   ServerName web2.magedu.com
   DocumentRoot "/vhosts/web2/htdocs"

  CustomLog logs/web2_access_log combined
 </VirtualHost>

内置的status页面

#vim /httpd/conf/httpd.conf

<Location /server-status>  //如果用户在浏览器中使用了server-status,它会调用一个叫server-status的headler来处理,并指明白名单
   SetHandler server-status
   Order deny,allow
   Deny from all
   Allow from 192.168.108
 </Location>

#service httpd reload

在浏览器中键入http://192.168.108.160/server-status

02:httpd-2.2基础配置的更多相关文章

  1. 1 - django-介绍-MTV-命令-基础配置-admin

    目录 1 什么是web框架 2 WSGI 3 MVC与MTV模式 3.1 MVC框架 3.2 MTV框架 3.3 区别 4 django介绍 4.1 Django处理顺序 4.2 创建django站点 ...

  2. ansible基础配置

    1.基础配置 1.1.环境 主机配置 ansible版本:2.7.4 控制端:centos7.4,IP:192.168.1.213,主机名:operation 被控制端: centos6.5,IP:1 ...

  3. Tomcat基础配置和高级配置

    **********  第一部分 Tomcat基础配置   *********** 一.Apatch Tomcat 在win下配置 大部分转载自:http://blog.csdn.net/liuhao ...

  4. 【linux配置】Redhat6.5基础配置指南

    Redhat6.5基础配置指南 本文针对鄙人在工作中常用系统配置加以说明,通常公司用于生产和测试的服务器基本上都不能连接外网,需要针对刚刚安装好的系统做一系列的常用配置. 一.常用基础系统配置 1.关 ...

  5. HAproxy 基础配置

    基础配置详解 HAProxy 的配置文件haproxy.cfg由两大部分组成,分别是global和proxies部分 global:全局配置段 进程及安全配置相关的参数性能调整相关参数Debug参数 ...

  6. StackExchange.Redis帮助类解决方案RedisRepository封装(基础配置)

    本文版权归博客园和作者吴双本人共同所有,转载和爬虫,请注明原文地址.http://www.cnblogs.com/tdws/p/5815735.html 写在前面 这不是教程,分享而已,也欢迎园友们多 ...

  7. Hibernate 基础配置及常用功能(三)

    本章重点讲述Hibernate对象的三种状态以及如何配置二级缓存 有关Hibernate的三种状态如何相互转换网上都能查到,官方文档描述的也比较详细.这里主要是针对几个重点方法做代码演示. 一.状态转 ...

  8. Emacs学习心得之 基础配置

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Emacs学习心得之 基础配置 1.前言2.基础配置 一.前言 本篇博文记录了Emacs的一 ...

  9. nginx 的基础配置[转]

    nginx 的基础配置 分类: 工具软件2013-11-13 23:26 11人阅读 评论(0) 收藏 举报   目录(?)[-] 管理配置文件 全局配置 虚拟机server配置 location配置 ...

随机推荐

  1. Presto上使用SQL遇到的一些坑

    本文转载自:https://segmentfault.com/a/1190000013120454?utm_source=tag-newest 最近换了新工作,在数据处理方面,公司是用Presto连接 ...

  2. AtCoder Beginner Contest 082 A - Round Up the Mean

    题目链接:https://abc082.contest.atcoder.jp/tasks/abc082_a Time limit : 2sec / Memory limit : 256MB Score ...

  3. GIT 分布式版本控制系统的简单使用介绍

    GIT 分布式版本控制系统的简单使用介绍 1.GIT的概念Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 与 SVN 区别:1. GIT不仅仅是个版本控制系统,它 ...

  4. mycat工作原理

    Mycat的原理并不复杂,复杂的是代码,如果代码也不复杂,那么早就成为一个传说了. Mycat的原理中最重要的一个动词是“拦截”,它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析: ...

  5. 大数据自学3-Windows客户端DbVisualizer/SQuirreL配置连接hive

    前面已经学习了将数据从Sql Server导入到Hive DB,并在Hue的Web界面可以查询,接下来是配置客户端工具直接连Hive数据库,常用的有DbVisualizer.SQuirreL SQL ...

  6. SOAPUI 案例操作步骤

    1. 构建项目 2. 运行单个请求 3. 构建测试用例 4. 接口之间传递参数 5. 运行整个测试用例 构建测试 以天气接口为例: 接口: http://ws.webxml.com.cn/WebSer ...

  7. logger日志模块

    简单配合模式: import logging#简单配置logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s ...

  8. Linux环境jdk的安装

    1.下载jdk1.7,oracle的下载地址已经失效,找了个其他的地址进行下载. wget http://pc.xzstatic.com/2017/03/jdk7u79linuxx64.tar.gz ...

  9. django 存在则忽略, 不存在则创 TagSheet.objects.get_or_create(tag='test')

    django 存在则忽略, 不存在则创 TagSheet.objects.get_or_create(tag='test')

  10. Vue基础进阶 之 Vue生命周期与钩子函数

    Vue生命周期 Vue生命周期:Vue实例从创建到销毁的过程,称为Vue的生命周期: Vue生命周期示意图:https://cn.vuejs.org/v2/guide/instance.html#生命 ...