You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apache-bugdb@apache.org by Sk...@hyperreal.org, Rasmus <ra...@gal.dk> on 1999/09/29 16:42:11 UTC

config/5082: httpd dies after a successful start if the name of the logfile in a VirtualHost directive is invalid

>Number:         5082
>Category:       config
>Synopsis:       httpd dies after a successful start if the name of the logfile in a VirtualHost directive is invalid
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    apache
>State:          open
>Class:          sw-bug
>Submitter-Id:   apache
>Arrival-Date:   Wed Sep 29 07:50:00 PDT 1999
>Last-Modified:
>Originator:     rasmus@gal.dk
>Organization:
apache
>Release:        1.3.9
>Environment:
root# uname -a
FreeBSD skaarup.org 3.3-RELEASE FreeBSD 3.3-RELEASE #0: Thu Sep 23 13:40:21 CEST 1999     root@skaarup.org:/usr/src/sys/compile/SKAARUP  386
>Description:
** snip from httpd.conf **

[...]
NameVirtualHost 130.228.230.140
[...]
<VirtualHost 130.228.230.140>
        ServerAdmin skaarup@spoon.dk
        DocumentRoot /home/skaarup/www.spoon.dk
        ServerName spoon.dk
        ServerAlias www.spoon.dk
        ErrorLog /var/log/www.spoon.dk/-error_log
        CustomLog /var/log/www.spoon.dk-access_log common
</VirtualHost>
[...]

** end of snip **

Please notice the slash in the ErrorLog directive, which of course is a typo. The "www.spoon.dk" directory does not exist in /var/log.

(apache is NOT running at this time)

root# apachectl configtest
Syntax OK
root# apachectl start
/usr/local/sbin/apachectl start: httpd started

Your mind rest asure.. but actually, httpd is not running. And there is no trace nor entry in any error-log (/var/log/error-log, default apache error-log). The next time I try to start apache:

root# apachectl start
/usr/local/sbin/apachectl start: httpd could not be started

That's it. The configtest still reports a green light. 
>How-To-Repeat:
Make a bad entry in the ErrorLog (and maybe CustomLog) directive in a VirtualHost object. This way Apache can't just make a new logfile (as it will try to create a file in a directory that doesn't exist).
>Fix:
Make sure configtest and/or the httpd-startup procedure (apachectl [re]start) notices it, and reports an error instead of a green light.
>Audit-Trail:
>Unformatted:
[In order for any reply to be added to the PR database, you need]
[to include <ap...@Apache.Org> in the Cc line and make sure the]
[subject line starts with the report component and number, with ]
[or without any 'Re:' prefixes (such as "general/1098:" or      ]
["Re: general/1098:").  If the subject doesn't match this       ]
[pattern, your message will be misfiled and ignored.  The       ]
["apbugs" address is not added to the Cc line of messages from  ]
[the database automatically because of the potential for mail   ]
[loops.  If you do not include this Cc, your reply may be ig-   ]
[nored unless you are responding to an explicit request from a  ]
[developer.  Reply only with text; DO NOT SEND ATTACHMENTS!     ]