指定apache日誌天天生成一個文件apache
Linux系統配置方法服務器
在apache的配置文件httpd.conf中找到ide
代碼以下
1 ErrorLog logs/error_log日誌
CustomLog logs/access_log common
2 將其改成
3 ErrorLog 「| /usr/local/apache/bin/rotatelogs /home/logs/www/%Y_%m_%d_error_log 86400」orm
CustomLog 「| /usr/local/apache/bin/rotatelogs /home/logs/www/%Y_%m_%d_access_log 86400」 common進程
(rotatelog 和log 的路徑都用的絕對路徑)文檔
Windows系統下配置方法:字符串
在apache的配置文件httpd.conf中找到form
代碼以下
1 ErrorLog logs/error_log登錄
CustomLog logs/access_log common
2 將其改成
3 ErrorLog 「|c:/apache/bin/rotatelogs.exe c:/apache/logs/error_%Y_%m_%d.log 86400 480」
CustomLog 「|c:/apache/bin/rotatelogs.exe c:/apache/logs/access_%Y_%m_%d.log 86400 480」 common
其中c:/apache/是你安裝apache的路徑
指定apache日誌生成大小
代碼以下
1 # 限制錯誤日誌文件爲 1M
ErrorLog 「|bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 1M」
# 天天生成一個錯誤日誌文件
#ErrorLog 「|bin/rotatelogs.exe -l logs/error-%Y-%m-%d.log 86400″
# 限制訪問日誌文件爲 1M
CustomLog 「|bin/rotatelogs.exe -l logs/access-%Y-%m-%d.log 1M」 common
# 天天生成一個訪問日誌文件
#CustomLog 「|bin/rotatelogs.exe -l logs/access-%Y-%m-%d.log 86400″ common
補充:apache日誌記錄格式的設置
定製日誌文件的格式涉及到兩個指令,即LogFormat指令和CustomLog指令,默認httpd.conf文件提供了關於這兩個指令的幾個示例。
LogFormat指令定義格式併爲格式指定一個名字,之後咱們就能夠直接引用這個名字。CustomLog指令設置日誌文件,並指明日誌文件所用的格式(一般經過格式的名字)。
LogFormat指令的功能是定義日誌格式併爲它指定一個名字。例如,在默認的httpd.conf文件中,咱們能夠找到下面這行代碼:
代碼以下
1 LogFormat 「%h %l %u %t 「%r」 %>s %b」 common
該指令建立了一種名爲「common」的日誌格式,日誌的格式在雙引號包圍的內容中指定。格式字符串中的每個變量表明着一項特定的信息,這些信息按照格式串規定的次序寫入到日誌文件。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設置獲得的服務器名字