標籤:記錄檔 通訊 esc httpd reserve 資訊 end headers tin
1,記錄檔太大問題 第一步:停止Apache服務的所有進程,刪除 /var/log/httpd目錄下的 error.log、access.log檔案第二步:開啟 /etc/httpd/conf 的 httpd.conf設定檔並找到下面配置ErrorLog logs/error.log把上面的注釋掉,換成# 每天產生一個錯誤記錄檔檔案ErrorLog "|/usr/sbin/rotatelogs /var/log/httpd/error_log%Y%m%d.log 86400 480"或者# 限制錯誤記錄檔檔案為 1MErrorLog "|/usr/sbin/rotatelogs /var/log/httpd/error_log%Y%m%d.log 1M"找到下面配置CustomLog logs/access.log combined把上面的注釋掉,換成# 每天產生一個訪問記錄檔CustomLog "|/usr/sbin/rotatelogs /var/log/httpd/access_log%Y%m%d.log 86400 480" common或者# 限制訪問記錄檔為 1MCustomLog "|/usr/sbin/rotatelogs /var/log/httpd/access_log%Y%m%d.log 1M" common 2、為了防止頻繁寫入一些不重要的錯誤記錄檔,提高系統效能,最好還要設定一下錯誤記錄檔層級找到httpd.conf設定檔下# # LogLevel: Control the number of messages logged to the error_log. # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. # LogLevel warn 其中LogLevel用於調整記於錯誤記錄檔中的資訊的詳細程度。(參閱ErrorLog指令)。可以選擇下列層級,依照重要性降序排列:Level Description Example emerg 緊急 - 系統無法使用。 "Child cannot open lock file. Exiting" alert 必須立即採取措施。 "getpwuid: couldn‘t determine user name from uid" crit 致命情況。 "socket: Failed to get a socket, exiting child" error 錯誤情況。 "Premature end of script headers" warn 警告情況。 "child process 1234 did not exit, sending another SIGHUP" notice 一般重要情況。 "httpd: caught SIGBUS, attempting to dump core in ..." info 普通訊息。 "Server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers)..." debug 出錯層級資訊 "Opening config file ..." 預設層級是warn,那麼warn層級以上的日誌都會記錄,會產生大量“檔案不存在”的erro層級的錯誤記錄檔。建議使用 crit 層級的設定,這樣只記錄致命層級以上的日誌,有效減少日誌數量。 把LogLevel warn更改為LogLevel crit 然後重啟apache即可。
centos7下,解決Apache錯誤記錄檔檔案過大問題