在 CentOS 系統中,Apache 服務器的訪問日志通常位于 /var/log/httpd/
目錄下,主要的訪問日志文件是 access_log
grep -o 'http.*"GET' /var/log/httpd/access_log | awk '{print $7}' | cut -d'"' -f1 | sort | uniq -c | sort -nr
這個命令的解釋如下:
grep -o 'http.*"GET' /var/log/httpd/access_log
:從訪問日志中提取所有 GET 請求。awk '{print $7}'
:提取請求的 URL。cut -d'"' -f1
:去除 URL 中的雙引號。sort
:對 URL 進行排序。uniq -c
:統計每個 URL 的訪問次數。sort -nr
:按照訪問次數降序排序。這個命令會輸出每個 URL 及其對應的訪問次數。如果你想查看特定時間范圍內的訪問量,可以使用 awk
命令來過濾日志。例如,要查看 2021 年 10 月的訪問量,可以使用以下命令:
awk '$4 >= "[10/Oct/2021" && $4 <= "[31/Oct/2021"' /var/log/httpd/access_log | grep -o 'http.*"GET' | awk '{print $7}' | cut -d'"' -f1 | sort | uniq -c | sort -nr
這個命令會在 access_log
文件中查找 2021 年 10 月的日志條目,然后按照上述步驟統計訪問量。