錯誤日志和訪問日志文件為系統管理員提供了有用的信息,比如,為 Web 服務器排障,保護系統不受各種各樣的惡意活動侵犯,或者只是進行各種各樣的分析以監控 HTTP 服務器。根據你 Web 服務器配置的不同,其錯誤/訪問日志可能放在你系統中不同位置。
本文可以幫助你找到Linux上的Apache錯誤日志。
Debian,Ubuntu或Linux Mint上的Apache錯誤日志位置
默認的錯誤日志
在基于Debian的Linux上,系統范圍的Apache錯誤日志默認位置是/var/log/apache2/error.log。默認位置可以通過編輯Apache的配置文件進行修改。
自定義的錯誤日志
要找到自定義的錯誤日志位置,請用文本編輯器打開 /etc/apache2/apache2.conf,然后查找以 ErrorLog 開頭的行,該行指定了自定義的 Apache 錯誤日志文件的位置。例如,在未經修改的 Apache 配置文件中可以找到以下行:
ErrorLog ${APACHE_LOG_DIR}/error.log
在本例中,該位置使用 APACHELOGDIR 環境變量進行配置,該變量在 /etc/apache2/envvars 中已被定義。
export APACHE_LOG_DIR=/var/log/apache2$SUFFIX
在實際情況中, ErrorLog 可能會指向你 Linux 系統中任意路徑。
使用虛擬主機自定義的錯誤日志
如果在 Apache Web 服務器中使用了虛擬主機, ErrorLog 指令可能會在虛擬主機容器內指定,在這種情況下,上面所說的系統范圍的錯誤日志位置將被忽略。
啟用了虛擬主機后,各個虛擬主機可以定義其自身的自定義錯誤日志位置。要找出某個特定虛擬主機的錯誤日志位置,你可以打開 /etc/apache2/sites-enabled/.conf,然后查找 ErrorLog 指令,該指令會顯示站點指定的錯誤日志文件。
CentOS,Fedora或RHEL上的Apache錯誤日志位置
默認的錯誤日志
在基于 Red Hat 的Linux中,系統范圍的 Apache 錯誤日志文件默認被放置在/var/log/httpd/error_log。該默認位置可以通過修改 Apache 配置文件進行自定義。
自定義的錯誤日志
要找出 Apache 錯誤日志的自定義位置,請用文本編輯器打開 /etc/httpd/conf/httpd.conf,然后查找 ServerRoot,該參數顯示了 Apache Web 服務器目錄樹的頂層,日志文件和配置都位于該目錄樹中。例如:
ServerRoot "/etc/httpd"
現在,查找 ErrorLog 開頭的行,該行指出了 Apache Web 服務器將錯誤日志寫到了哪里去。注意,指定的位置是 ServerRoot 值的相對位置。例如:
ErrorLog "log/error_log"
結合上面的兩個指令,可以獲得完整的錯誤日志路徑,默認情況下該路徑就是 /etc/httpd/logs/errorlog。在全新安裝的Apache中,這是一個到 /var/log/httpd/errorlog 的符號鏈接。
在實際情況中, ErrorLog 可能指向你 Linux 系統中的任意位置。
新聞熱點
疑難解答