【linux】apache的访问日志详解及演练




#### []( )二. apache的日志格式详解



##### []( )1\. 输出最近的一段访问日志



[root@xinsz08 logs]# tail access_log

203.208.60.97 - - [28/Jul/2020:16:23:04 +0800] “GET / HTTP/1.1” 200 8818

46.229.168.141 - - [28/Jul/2020:16:24:28 +0800] “GET /home.php?ac=favorite&formhash=5dc27e6e&handlekey=favoriteforum&id=51&mod=spacecp&type=forum HTTP/1.1” 200 1215

216.244.66.249 - - [28/Jul/2020:16:24:33 +0800] “GET /home.php?mod=space&uid=815&do=share&view=me&from=space&type=link HTTP/1.1” 200 12752

154.211.129.218 - - [28/Jul/2020:16:25:38 +0800] “POST /uc_server/index.php HTTP/1.1” 200 2

47.92.7.83 - - [28/Jul/2020:16:25:58 +0800] “GET / HTTP/1.1” 200 9228

46.229.168.154 - - [28/Jul/2020:16:26:17 +0800] “GET /home.php?ac=pm&daterange=2&handlekey=showmsg_5&mod=spacecp&op=showmsg&pid=2036&pmid=0&tid=1745&touid=5 HTTP/1.1” 200 4476

46.229.168.144 - - [28/Jul/2020:16:26:25 +0800] “GET /forum.php?goto=lastpost&mod=redirect&tid=145 HTTP/1.1” 302 20

46.229.168.143 - - [28/Jul/2020:16:26:30 +0800] “GET /forum.php?mod=viewthread&tid=145 HTTP/1.1” 200 9617

47.106.201.78 - - [28/Jul/2020:16:26:46 +0800] “GET / HTTP/1.1” 200 9229

47.103.47.81 - - [28/Jul/2020:16:26:59 +0800] “GET / HTTP/1.1” 200 9227




访问日志记录了所有对web服务器的访问活动:  

47.103.47.81 - - \[28/Jul/2020:16:26:59 +0800\] “GET / HTTP/1.1” 200 9227



##### []( )2\. 日志的字段所代表的内容如下:



1.  远程主机IP:表明访问网站的是谁 (47.103.47.81)

    

2.  空白(E-mail):为了避免用户的邮箱被垃圾邮件骚扰,第二项就用“-”取代了

    

3.  空白(登录名):用于记录浏览者进行身份验证时提供的名字。

    



下图是上节课我们做的基于域名认证的截图,可以看到IP后面- - 的第二个-是gaosh:  

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200728163212564.png)



4.  时间:用方括号包围,而且采用“公用日志格式”或者“标准英文格式”。 时间信息最后的“+0800”表示服务器所处时区位于UTC之后的8小时。

5.  方法+资源+协议:服务器收到的是一个什么样的请求。该项信息的典型格式是“METHOD RESOURCE PROTOCOL”,即“方法 资源 协议”。 METHOD: GET、POST、HEAD、…… RESOURCE: /、index.html、/default/index.php、……(请求的文件) PROTOCOL: HTTP+版本号

6.  状态代码:请求是否成功,或者遇到了什么样的错误。大多数时候,这项值是200,它表示服务器已经成功地响应浏览器的请求,一切正常。

7.  发送字节数:表示发送给客户端的总字节数。它告诉我们传输是否被打断(该数值是否和文件的大小相同)。把日志记录中的这些值加起来就可以得知服务器在一天、一周或者一月内发送了多少数据



##### []( )3\. apache访问日志配置文件参数详解



apache中的日志格式分为:普通型和复合型,默认是普通型



apache访问日志格式主要有两个参数:



*   logFormat  

    ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020072816384967.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpbnNodXpoYW4=,size_16,color_FFFFFF,t_70)  

    CustomLog  

    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200728163928421.png)  

    两者的意思是:  

    LogFormat指令:定义格式并为格式指定一个名字,以后我们就可以直接引用这个名字。  

    CustomLog指令:设置日志文件,并指明日志文件所用的格式



详细的参数



| 参数 | 含义 |

| --- | --- |

| %h | 远程主机 |

| %l(小写的L) | 远端登录名 |

| %u | 远程用户名 |

| %t | 登录时间或者请求时间 |

| %r | 请求的第一行 |

| %>s | 状态 |

| %b | 传送字节数数 |

| %{Referer}i | 请求来源 |

| %{User-agent}i | 客户端浏览器提供的浏览器识别信息 |



apache文档中给出的日志格式串变量及其含义:



%a: 远程IP地址

%A: 本地IP地址

%B: 已发送的字节数,不包含HTTP头

%b: CLF格式的已发送字节数量,不包含HTTP头。例如当没有发送数据时,写入‘-’而不是0。

%{FOOBAR}e: 环境变量FOOBAR的内容

%f: 文件名字

%h: 远程主机

%H 请求的协议

%Foobar}i: Foobar的内容,发送给服务器的请求的标头行。

%l: 远程登录名字(来自identd,如提供的话)

%m: 请求的方法

%{Foobar}n: 来自另外一个模块的注解“Foobar”的内容

%{Foobar}o: Foobar的内容,应答的标头行

%p: 服务器响应请求时使用的端口

%P: 响应请求的子进程ID。

%q: 查询字符串(如果存在查询字符串,则包含“?”后面的部分;否则,它是一个空字符串。)

%r: 请求的第一行

%s: 状态。对于进行内部重定向的请求,这是指原来请求的状态。如果用%…>s,则是指后来的请求。

%t: 以公共日志时间格式表示的时间(或称为标准英文格式)

%{format}t: 以指定格式format表示的时间

%T: 为响应请求而耗费的时间,以秒计

%u: 远程用户(来自auth;如果返回状态(%s)是401则可能是伪造的)

%U: 用户所请求的URL路径

%v: 响应请求的服务器的ServerName

%V: 依照UseCanonicalName设置得到的服务器名字




#### []( )三. 配置修改实战



配置文件中修改:只保留时间,请求第一行,状态,请求来源  

![在这里插入图片描述](https://img-blog.csdnimg.cn/2020072817081025.png)  


# 最后总结

## ActiveMQ+Kafka+RabbitMQ学习笔记PDF

![image.png](https://img-blog.csdnimg.cn/img_convert/c191a20f2def165d9c2cc1829aa80189.webp?x-oss-process=image/format,png)


* ### RabbitMQ实战指南

![image.png](https://img-blog.csdnimg.cn/img_convert/6a6d12fba04133a36016bccdacd72789.webp?x-oss-process=image/format,png)


* ### 手写RocketMQ笔记

![image.png](https://img-blog.csdnimg.cn/img_convert/ddfdc8074317d20eddcc9693987a421c.webp?x-oss-process=image/format,png)


* ### 手写“Kafka笔记”

![image](https://img-blog.csdnimg.cn/img_convert/8379d5d7847a68fda06314fae7b9a906.webp?x-oss-process=image/format,png)

关于分布式,限流+缓存+缓存,这三大技术(包含:ZooKeeper+Nginx+MongoDB+memcached+Redis+ActiveMQ+Kafka+RabbitMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦
## 手写“Kafka笔记”

[外链图片转存中...(img-p3h6RnVS-1718906630969)]

关于分布式,限流+缓存+缓存,这三大技术(包含:ZooKeeper+Nginx+MongoDB+memcached+Redis+ActiveMQ+Kafka+RabbitMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值