CentOS Apache日志记录什么内容
导读:CentOS Apache日志主要分为两类:访问日志(Access Log)和错误日志(Error Log),分别记录客户端访问信息和服务器运行错误信息。 一、访问日志(Access Log) 访问日志记录所有客户端对Apache服务器的访...
CentOS Apache日志主要分为两类:访问日志(Access Log)和错误日志(Error Log),分别记录客户端访问信息和服务器运行错误信息。
一、访问日志(Access Log)
访问日志记录所有客户端对Apache服务器的访问请求,用于分析用户行为、流量来源等。其内容由日志格式决定,常见格式及字段如下:
1. 默认格式:Combined Log Format(组合日志格式)
这是Apache最常用的日志格式,包含客户端信息、请求详情及引用来源等,字段及含义如下:
%h
:客户端IP地址(如192.168.1.1);%l
:远程日志名称(通常为空,由identd服务提供);%u
:远程用户(若启用了HTTP认证,记录认证的用户名;未认证则为空);%t
:请求时间戳(格式如[10/Oct/2025:14:30:00 +0800]
);%r
:请求的第一行(包含HTTP方法、URL及版本,如"GET /index.html HTTP/1.1"
);%> s
:最终响应的HTTP状态码(如200表示成功、404表示未找到、500表示服务器错误);%b
:发送给客户端的字节数(不包括HTTP头,如1024表示发送了1KB数据);"%{ Referer} i"
:引用页的URL(即用户是从哪个页面跳转过来的,如"https://www.example.com/"
;若无引用页则为空);"%{ User-Agent} i"
:客户端用户代理字符串(如"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
,标识浏览器、操作系统等信息)。
2. 简化格式:Common Log Format(通用日志格式)
仅包含基础访问信息,字段为:%h %l %u %t \"%r\" %>
s %b
(对应上述客户端IP、远程日志名称、远程用户、时间戳、请求行、状态码、字节数)。
3. 自定义格式
通过LogFormat
指令可自定义日志字段,例如:
LogFormat "%h %m %U %T" custom # 记录客户端IP、请求方法、请求URL、响应时间
CustomLog /var/log/httpd/custom_access_log custom
其中%m
表示HTTP方法(如GET、POST),%U
表示请求的URL路径,%T
表示响应时间(单位:秒)。
二、错误日志(Error Log)
错误日志记录Apache服务器运行过程中遇到的错误信息,用于故障排查(如配置错误、权限问题、脚本故障等)。其内容格式如下:
- 时间戳:错误发生的时间(如
[Thu Mar 04 15:29:13 2021]
); - 客户端IP:发起请求的客户端IP地址(如
[client 192.168.1.1]
); - 错误级别:错误的严重程度(如
[error]
表示严重错误、[warn]
表示警告、[info]
表示普通信息); - 错误消息:具体的错误描述(如
script '/usr/lib/cgi-bin/test.cgi' not found or unable to stat
); - 请求URL:触发错误的请求URL(如
/cgi-bin/test.cgi
); - HTTP状态码:关联的HTTP状态码(如404、500等)。
常见错误类型及示例
- 404 Not Found:请求的资源不存在,错误消息如
File does not exist: /var/www/html/nonexistent.html
(原因:URL路径错误或文件被删除); - 500 Internal Server Error:服务器内部错误,错误消息如
script '/usr/lib/cgi-bin/test.cgi' not found or unable to stat
(原因:CGI脚本不存在或无法执行); - 403 Forbidden:权限不足,错误消息如
Directory index forbidden by Options directive: /var/www/html/protected
(原因:目录未开启索引或权限设置过严); - 401 Unauthorized:需要身份验证,错误消息如
client denied by server configuration: /var/www/html/restricted
(原因:访问受限目录未提供有效认证信息)。
三、日志文件默认路径
- 访问日志:
/var/log/httpd/access_log
(CentOS 7及更早版本)或/var/log/apache2/access.log
(部分配置); - 错误日志:
/var/log/httpd/error_log
(CentOS 7及更早版本)或/var/log/apache2/error.log
(部分配置)。
四、日志配置方法
通过修改Apache主配置文件(/etc/httpd/conf/httpd.conf
)或虚拟主机配置文件(/etc/httpd/conf.d/vhost.conf
)调整日志设置:
- 修改访问日志路径/格式:使用
CustomLog
指令,例如CustomLog /var/log/httpd/access_log combined
; - 修改错误日志路径:使用
ErrorLog
指令,例如ErrorLog /var/log/httpd/error_log
; - 调整日志级别:使用
LogLevel
指令(可选值:debug
、info
、notice
、warn
、error
、crit
、alert
、emerg
),例如LogLevel warn
(仅记录警告及以上级别错误)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS Apache日志记录什么内容
本文地址: https://pptw.com/jishu/723296.html