When apachectl issuing a restart, it sends a SIGHUP signal to httpd,
and when httpd receives this signal, it doesn't exit from its chroot.
So, "apachectl restart" becomes unfunctional when you have external
modules via LoadModule in your httpd.conf.

I have the following line in my httpd.conf:

LoadModule throttle_module  /usr/lib/apache/modules/mod_throttle.so

When you have such a line, (and the module file exists there) apache
doesn't want to restart (apachectl restart) anymore.

After executing apachectl restart command, error_log file receives:
Syntax error on line 276 of /conf/httpd.conf: Cannot load
/usr/lib/apache/modules/mod_throttle.so into server: File not found
But the file is already there.
So i should manually 'apachectl stop' and 'apachectl start' to restart httpd;

A demonstration:

# apachectl start
/usr/sbin/apachectl start: httpd started
# apachectl restart
/usr/sbin/apachectl restart: httpd restarted  <--httpd stopped but didn't start 
again
# apachectl stop
/usr/sbin/apachectl stop: httpd (pid 947?) not running

# apachectl start
/usr/sbin/apachectl start: httpd started

System: OpenBSD 4.6-stable with the stock httpd (Apache/1.3.29)

Regards.

-- 
Ozgur Kazancci

Reply via email to