Debian

apache自動重新啟動/重新載入配置,為什麼?

  • February 21, 2011

簡而言之:

  • 執行生產網路伺服器
  • 星期二:更改了配置(更改錯誤,語法錯誤)但故意不重新啟動 apache
  • apache 今天自行重新啟動或重新載入配置@cron.daily 時間
  • 阿帕奇已關閉

為什麼 apache 會自行重啟或重新載入配置?

長版

在我的 debian lenny 穩定伺服器上,它有一個非常預設的設置(apache2、mod_php、mysql 客戶端、apc…)我對我的 apc.ini 進行了更改,我不確定它是否有問題,因為它是生產伺服器,我只是保護了文件而沒有重新啟動網路伺服器。

今天@cron.daily 時間(6:25),由於 apc.ini 錯誤,伺服器自行重新啟動並保持關閉。我真的很想知道,為什麼伺服器會自行重啟。還有為什麼今天?這是 cron.daily 時間而不是每週時間,錯誤的配置從星期二開始線上。

crontab:

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

cron.daily 內容:

apache2
apt
aptitude
bsdmainutils
logrotate
man-db
standard

cron.weekly 內容:

man-db

有任何想法嗎?

編輯:根據所選答案添加 logrotate 標籤

cron 執行 logrotate,logrotate 重新載入 Apache:

/var/log/apache2/*.log {
       ........
       postrotate
               if [ -f "`. /etc/apache2/envvars ; echo ${APACHE_PID_FILE:-/var/run/apache2.pid}`" ]; then
                       /etc/init.d/apache2 reload > /dev/null
               fi
       endscript
}

也許我錯了我不確定,但我認為當 apache web 伺服器崩潰時 init.d 會自動重新啟動它,這也取決於 apache 的環境和配置(例如,您使用的是什麼作業系統或 Linux 發行版)

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