CentOS Apache日志主要分為兩類:訪問日志(Access Log)和錯誤日志(Error Log),分別記錄客戶端請求詳情與服務器運行異常信息。
訪問日志記錄所有對Apache服務器的訪問請求,核心內容包括:
%h
)、遠程用戶(%u
,僅當啟用認證時記錄)、遠程登錄名(%l
,通常為空);%t
,格式如[day/month/year:hour:minute:second timezone]
);%r
),包含HTTP方法(如GET、POST)、請求的URL及協議版本(如GET /index.html HTTP/1.1
);%>s
),如200(成功)、404(未找到)、500(服務器內部錯誤);%b
,不包括HTTP頭部)、請求處理時間(%T
,單位為秒,需自定義格式);%{Referer}i
,如https://example.com/home
)、客戶端瀏覽器或設備信息(%{User-Agent}i
,如Chrome/120.0.0.0
)。combined
格式(包含上述大部分字段),自定義格式可通過LogFormat
指令調整,例如僅記錄IP、方法、URL及狀態碼:LogFormat "%h %m %U %>s" simple
。錯誤日志記錄Apache服務器運行過程中的異常信息,核心內容包括:
[client IP]
);[error]
(嚴重錯誤,需立即處理)、[warn]
(警告,需關注)、[info]
(普通信息,用于調試);script '/usr/lib/cgi-bin/test.cgi' not found or unable to stat
);/cgi-bin/test.cgi
)、HTTP狀態碼(如404
)。[Thu Mar 04 15:29:13 2021] [error] [client 192.168.1.1] File does not exist: /var/www/html/nonexistent.html
(表示客戶端請求的文件不存在)。