9

in short:

  • running production webserver
  • tuesday: changed config (the change was erroneous, wrong syntax) but deliberately not restarted apache
  • apache restarted or reloaded config by itself today @cron.daily time
  • apache was down

why apache restarted or reloaded config by itself?

long version

on my debian lenny stable server, which has a quite default setup (apache2, mod_php, mysql client, apc,...) i made a change to my apc.ini where i was not sure if it is faulty or not, because it is an production server, i just safed the file without restarting the webserver.

today @cron.daily time (6:25), the server restarted itself and stayed down because of the faulty apc.ini. i really want to know, why the server restarted itself. also why today? it is the cron.daily time and not the weekly time, the faulty config is online since tuesday.

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 content:

apache2
apt
aptitude
bsdmainutils
logrotate
man-db
standard

cron.weekly content:

man-db

any ideas?

edit: added logrotate tag based on the selected answer

2 Answers 2

8

cron run logrotate, logrotate reload 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
}
2
  • thank you. it was a faulty value for in apc.ini ;apc.shm_size=2G ;apc.shm_size=2048 ;apc.shm_size=2048M was not sure which is the right one (differs from apc version), not sure if apache configtest also works for that.
    – c33s
    Feb 20, 2011 at 12:06
  • The "reload" option is the equivalent of "apache2ctl graceful" (on debian, anyway), which is supposed to do a configtest before reloading. I'm surprised it was willing to kill apache with a bad config.
    – akramer
    Feb 21, 2011 at 1:42
0

maybe i'm wrong i'm not sure but i think that when apache web server crashes init.d restarts it automatically, also it depends on the environment and configuration of apache (e.g. what OS or Linux Distribution you are using)

1
  • 1
    Init.d does not restart anything automatically. There are services that are used for monitoring of other, and in case of failure restart them, but init.d is not a service, just mere location where init scripts are stored. Feb 20, 2011 at 13:27

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .