Apache-2.4

關於httpd日誌的一些問題

  • March 17, 2021

第一個問題:為什麼會有兩個錯誤日誌文件?一種是 /var/www/mywebsite/error.log,<VirtualHost>在 ErrorLog 指令中指定。另一個是 /var/log/httpd/error_log。我找不到它的定義位置。/etc/httpd/conf/httpd.conf 外面有一行<VirtualHost>

ErrorLog "logs/error_log"

但我認為這與/var/log/httpd/error_log 不對應。

第二個問題:為什麼兩個錯誤日誌文件的所有者都是 root:root,而不是 /etc/httpd/conf/httpd.conf 中指定的 apache:apache:

User apache
Group apache

兩個錯誤日誌文件,因為有一個用於整個伺服器(關於啟動錯誤和影響所有虛擬主機的問題),並且虛擬主機中的錯誤日誌僅限於特定於與該虛擬主機有關的事件的錯誤消息。(例如 404 錯誤)

第二:

當 Apache 以 root 身份啟動(以便能夠綁定到特權埠 80 和 443)時,它可以放棄特權,隨後將以 User 指令中定義的使用者身份執行:Apache。日誌文件在啟動時打開(在刪除權限之前),因此歸啟動 Apache Ie root 的使用者所有。

引用自:https://serverfault.com/questions/1057332