蓝忧无泪 发表于 2019-1-14 14:34:33

apache的access_log与error_log

1. access_log 访问日志
access_log为访问日志,记录所有对apache服务器进行请求的访问,它的位置和内容由CustomLog指令控制,LogFormat指令可以用来简化该日志的内容和格式

2. error_log 错误日志
error_log为错误日志,记录下任何错误的处理请求,它的位置和内容由ErrorLog指令控制,通常服务器出现什么错误,首先对它进行查阅,是一个最重要的日志文件。


3.日志路径
通过apache配置文件,找到日志存放地址:
find / -name "httpd.conf"
找到配置文件地址,打开它,在里边找到apache的【访问日志】与【错误日志】存放地址

sudo vi /private/etc/apache2/httpd.conf



我的存放地址分别在:
/private/var/log/apache2/error_log
/private/var/log/apache2/access_log



一,查看apache错误日志

tail -f -30"/private/var/log/apache2/error_log"

client denied by server configuration: /export/home/live/ap/htdocs/test

第一项是错误发生的日期和时间;
第二项是错误的严重性,LogLevel指令使只有高于指定严重性级别的错误才会被记录;
第三项是导致错误的IP地址;
此后是信息本身,在此例中,服务器拒绝了这个客户的访问。服务器在记录被访问文件时,用的是文件系统路径,而不是Web路径。
错误日志中会包含类似上述例子的多种类型的信息。此外,CGI脚本中任何输出到stderr(标准错误)的信息会作为调试信息原封不动地记录到错误日志中。

二,同样的,在apache配置文件里找到access_log存放地址

tail -f -30"/private/var/log/apache2/access_log"


看一条典型的access_log的日志记录:61.155.149.20 - - "GET /category/db/ HTTP/1.1" 200 232251).61.155.149.20
这是一个请求到apache服务器的客户端ip,默认的情况下,第一项信息只是远程主机的ip地址,但我们如果需要apache查出主机的名字,可以将 HostnameLookups设置为on,不推荐使用,会大大降低网站速度。

2). -
这一项是空白,使用"-"来代替,用于记录浏览者的标识,对于大多数浏览器,这项都是空。

3). -
也为空,记录浏览者进行身份验证时提供的名字,大多数这项也为空。

4).
第四项是记录请求的时间,格式为,最后的+0800表示服务器所处的时区为东八区

5). "GET /category/db/ HTTP/1.1"
这一项最有用,首先,它告诉我们的服务器收到的是一个GET请求,其次,是客户端请求的资源路径,第三,客户端使用的协议时HTTP/1.1,整个格式为"%m %U%q %H",即"请求方法/访问路径/协议"

6). 200
这是一个状态码,由服务器端发送回客户端,它告诉我们客户端的请求是否成功,或者是重定向,或者是碰到了什么样的错误,这项值为200,表示服务器已经成 功的响应了客户端的请求,一般来说,这项值以2开头的表示请求成功,以3开头的表示重定向,以4开头的标示客户端存在某些的错误,以5开头的标示服务器端 存在某些错误。

7).23225
这项表示服务器向客户端发送了多少的字节,在日志分析统计的时侯,把这些字节加起来就可以得知服务器在某点时间内总的发送数据量是多少


页: [1]
查看完整版本: apache的access_log与error_log