Apache限定記錄檔的大小 即使一個並不繁忙的伺服器,其記錄檔的資訊量也會很大,一般每10000個請求,訪問日誌就會增加1MB或更多。這就有必要定期滾動記錄檔。介紹下管道日誌: www.2cto.com Apache httpd可以通過管道將訪問記錄和出錯資訊傳遞給另一個進程,而不是寫入一個檔案,由於無須對主伺服器進行編程,這個功能顯著地增強了日誌的靈活性。只要用管道操作符"|"後面跟一個可執行檔名,就可以使這個程式從標準輸入裝置獲得事件記錄。Apache在啟動時,會同時啟動這個管道日誌進程,並且在運行過程中,如果這個進程崩潰了,會重新啟動這個進程。 管道日誌的一種重要用途是,允許日誌滾動而無須重新啟動伺服器。為此,伺服器提供了一個簡單的程式rotatelogs。每24小時滾動一次日誌的例子如下: CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/access_log 86400" common 具體做法是 開啟 Apache 的 httpd.conf設定檔並找到下面兩條配置 www.2cto.com ErrorLog logs/error.log CustomLog logs/access.log common 直接注釋掉,換成下面的設定檔。 # 限制錯誤記錄檔檔案為 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 這樣就不用擔心單個記錄檔過大。