[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#366843: marked as done (apache postinstall script insists of (quietly) setting ServerName (to localhost))



Your message dated Sat, 9 Sep 2006 11:32:46 +0200
with message-id <20060909093246.GA22734@lapse.madduck.net>
and subject line apache postinstall script insists of (quietly) setting ServerName (to localhost)
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: apache
Version: 1.3.33-6sarge1
Severity: grave

When upgrading apache (or dpkg-reconfiguring it), ServerName directive
is set to some value (defaults to `localhost').  Before upgrade the
configuration was perfectly valid, with ServerName taken from hostname
apache is running on.  After upgrades, ServerName is set to invalid
'localhost'.

Usually I keep local modifications in another file (httpd.conf.local) -
stuff like MinSpareServers, mod_proxy configs (if any) etc - it's easy
to overwrite those even if set in the default httpd.conf.  But I can't
"unset" ServerName which is being forcedly set in httpd.conf.

There's some words about "black magic" in
/usr/share/apache/postinst.common wrt setting ServerName.  I probably
can just remove the text postinst.common searches for, to avoid this
issue, but.. that required me about an hour to figure it all out!.. ;)

Why the ServerName is being set in the first place, anyway?  Setting it
quietly is bad (hence Severity set to "grave" - it silently brokes valid
configuration), but why to set it at all?

Thanks.

-- System Information:
Debian Release: 3.1
  APT prefers testing
  APT policy: (500, 'testing'), (50, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.16-i686
Locale: LANG=ru_RU.KOI8-R, LC_CTYPE=ru_RU.KOI8-R (charmap=KOI8-R)

Versions of packages apache depends on:
ii  apache-common             1.3.33-6sarge1 support files for all Apache webse
ii  debconf                   1.4.30.13      Debian configuration management sy
ii  dpkg                      1.10.28        Package maintenance system for Deb
ii  libc6                     2.3.2.ds1-22   GNU C Library: Shared libraries an
ii  libdb4.2                  4.2.52-18      Berkeley v4.2 Database Libraries [
ii  libexpat1                 1.95.8-3       XML parsing C library - runtime li
ii  libmagic1                 4.12-1         File type determination library us
ii  logrotate                 3.7-5          Log rotation utility
ii  mime-support              3.28-1         MIME files 'mime.types' & 'mailcap
ii  perl                      5.8.4-8sarge4  Larry Wall's Practical Extraction 

-- debconf information excluded


--- End Message ---
--- Begin Message ---
Version: 1.3.34-4

also sprach Michael Tokarev <mjt@corpit.ru> [2006.05.11.1711 +0200]:
> When upgrading apache (or dpkg-reconfiguring it), ServerName
> directive is set to some value (defaults to `localhost').  Before
> upgrade the configuration was perfectly valid, with ServerName
> taken from hostname apache is running on.  After upgrades,
> ServerName is set to invalid 'localhost'.

If a global ServerName is set in the configuration, dpkg-reconfigure
works as it should, in my tests.

If I remove the global ServerName directive and reconfigure, a new
configuration is created and debconf asks for the server name to
use, defaulting to localhost. It then adds a global ServerName
directive and delegates to ucf to ask whether it's okay to replace
the file.

If for some reason, debconf or ucf don't get to do their jobs
(e.g. noninteractive frontend), the configuration file is not
changed.

This is the intended behaviour.

> Usually I keep local modifications in another file
> (httpd.conf.local) - stuff like MinSpareServers, mod_proxy configs
> (if any) etc - it's easy to overwrite those even if set in the
> default httpd.conf.  But I can't "unset" ServerName which is being
> forcedly set in httpd.conf.

Do you Include the httpd.conf.local file?

If I add a .local file Included from httpd.conf, and I unset
ServerName in httpd.conf and add it to httpd.conf.local,
dpkg-reconfigure correctly reads and writes to .local instead of
httpd.conf. It *will* use ucf to prompt you whether to replace the
file, which is sort of weird (I'll file another bug about this).

However, as before, I don't see a bug.

> Why the ServerName is being set in the first place, anyway?  Setting it
> quietly is bad (hence Severity set to "grave" - it silently brokes valid
> configuration), but why to set it at all?

From what I understand, it's needed for redirections when no vhost
matches. apache warns you if you start it without specifying
a value, so it's probably good that Debian sets it.

I am closing this bug. If you feel this is not okay, please provide
more information (like your configuration files), specify what
exactly you do to reproduce the problem, what the actual results
are, and what you would have wanted the results to be.

Cheers,

-- 
 .''`.     martin f. krafft <madduck@debian.org>
: :'  :    proud Debian developer, author, administrator, and user
`. `'`     http://people.debian.org/~madduck http://debiansystem.info
  `-  Debian - when you have better things to do than fixing systems

Attachment: signature.asc
Description: Digital signature (GPG/PGP)


--- End Message ---

Reply to: