apache運行自動生成access_log(訪問日誌)和error_log(錯誤日誌)兩種日誌文件,這對於系統管理員或網站運營人員是非常有用的。
我安裝的是centos,使用yum方式安裝lamp環境的,日誌文件位置:
/var/log/httpd/access_log是Apache服務器的訪問日誌文件
/var/log/httpd/error_log是Apache服務器的錯誤日誌文件
如果把所有的訪問日誌都放在access_log,所有的錯誤日誌都放在error_log文件,那麼着兩個文件肯定會很大,你打開日誌的時間都會很長,別說看了,而且影響網站速度。我看了下php點點通,剛轉到阿里雲才幾天,日誌文件都有幾十兆了,因此限制日誌文件大小是很有必要的。
打開apache的配置文件:vi /etc/httpd/conf/httpd.conf
編輯:
#錯誤日誌
#ErrorLog logs/error_log #註釋,加上下面這行
ErrorLog "|rotatelogs /var/log/httpd/error_log%Y_%m_%d.log 86400 480" #每天生成錯誤日誌
#訪問日誌
#CustomLog logs/access_log common #註釋加上下面這樣
CustomLog "|rotatelogs /var/log/httpd/access_log%Y_%m_%d.log 86400 480" common #每天生成訪問日誌
OK,重啓apache,你就可以看到新生成的日誌文件:
Rotatelogs的用法如下:
rotatelogs [ -l ] logfile [ rotationtime [ offset ]] | [ filesizeM ]
選項:
-l
使用本地時間代替GMT時間作爲時間基準。注意:在一個改變GMT偏移量(比如夏令時)的環境中使用-l會導致不可預料的結果。
logfile
它加上基準名就是日誌文件名。如果logfile中包含"%",則它會被視爲用於strftime()的格式字符串;否則它會被自動加上以秒爲單位的".nnnnnnnnnn"後綴。這兩種格式都表示新的日誌開始使用的時間。
rotationtime
日誌文件滾動的以秒爲單位的間隔時間。
offset
相對於UTC的時差的分鐘數。如果省略,則假定爲"0"並使用UTC時間。比如,要指定UTC時差爲"-5小時"的地區的當地時間,則此參數應爲"-300"。
filesizeM
指定以filesizeM文件大小滾動,而不是按照時間或時差滾動。
轉載於:http://www.phpddt.com/server/apache-access-error-log.html