Linux上Apache錯誤記錄檔存放目錄及自訂

來源:互聯網
上載者:User

我要解決 Linux 系統上的 Apache Web 服務器的錯誤,Apache的錯誤記錄檔檔案找不到,請問是放在的哪個目錄呢?


Apache記錄檔為系統管理員提供了有用的資訊,比如,為 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 系統中的任意位置。


使用虛擬機器主機自訂的錯誤記錄檔

如果你啟用了虛擬機器主機,你可以通過檢查 /etc/httpd/conf/httpd.conf(或其它任何定義了虛擬機器主機的檔案)來找到各個虛擬機器主機的錯誤記錄檔位置。在獨立的虛擬機器主機部分尋找 ErrorLog。如,在下面的虛擬機器主機部分,錯誤記錄檔的位置是 /var/www/xmodulo.com/logs/error_log。

<VirtualHost *:80>
    ServerAdmin webmaster@xmodulo.com
    DocumentRoot /var/www/xmodulo.com/public_html
    ServerName www.xmodulo.com
    ServerAlias xmodulo.com
    ErrorLog /var/www/xmodulo.com/logs/error_log
    CustomLog /var/www/xmodulo.com/logs/access_log
<VirtualHost>



windows系統下apache日誌設定教程

註:Apache安裝目錄改成你自己的

apache預設日誌在安裝目錄下的logs目錄中,例如:D:\Apache Software Foundation\Apache2.2\logs

有時候需要設定到其他目錄,其實很多時候都應該設定到其他目錄。

設定檔是在安裝目錄下的conf目錄下的httpd.conf檔案,預設配置:

ErrorLog "logs/error.log"

LogFormat "%h %l %u %t \"%r\" %>s %b" commonCustomLog "logs/access.log" common

如果直接修改路徑,則日期設定會出問題,在網上找到的方法如下:

ErrorLog "|bin/rotatelogs.exe E:/log/apache/error-%y-%m-%d.log 86400"LogFormat "%h %l %u %t \"%r\" %>s %b" commonCustomLog "|bin/rotatelogs.exe E:/log/apache/access.log" common

如果是有多個網站,需要針對多個網站設定,在VirtualHost裡面設定

<VirtualHost *:80>

    ProxyPreserveHost On    ServerAdmin admin    ServerName www.yingbuluo.com

    ProxyPass / http://www.yingbuluo.com:8082/    ProxyPassReverse / http://www.yingbuluo.com:8082/    SetEnv force-proxy-request-1.0.1    SetEnv proxy-nokeepalive 1

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combinedCustomLog "|bin/rotatelogs.exe E:/log/apache/weba/access-%y-%m-%d.log 86400" combined

</VirtualHost>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.