httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tony Finch <>
Subject [PATCH] more mass virtual hosting support
Date Thu, 20 May 1999 18:16:07 GMT
I have finlly got permission to release some modifications that I
developed for Demon Internet to provide better support for mass
dynamic virtual hosting, especially IP-based virtual hosts. It is in
two parts: (1) a new module, mod_vhost_alias, and (2) a patch to the
existing code. We are using this on web servers that have thousands of
IP-based virtual hosts.

The first two attachments to this message are the source code and
documentation for mod_vhost_alias. This module provides simplified and
streamlined support for dynamic mass virtual hosting as compared to
using mod_rewrite. In addition it allows you to vary the DocumentRoot
or a standard ScriptAlias based on the IP address of the server, which
isn't possible with mod_rewrite (but see below).

The third attachment is a patch which does a number of things:

(1) Add a local_ip and local_host fields to conn_rec, analogous to the
remote_ip and remote_host fields. The first of these is used by
mod_vhost_alias and the modified mod_log_config; the second is
required for UseCanonicalName DNS.

(2) (The bulk of the change.) Add a third option to UseCanonicalName,
"DNS". The reson for this is to support ancient browsers that do not
provide a Host: header when we are doing IP-based dynamic virtual
hosting and need to create a self-referential URL, etc. This could
probably be generalised to using DB files etc.

(3) Change mod_log_config to add %A for logging the server address.
The motivation for this is to reduce the number of reverse DNS lookups
required when using UseCanonicalName DNS compared to logging %V.

The fourth attachment is a trivial patch that adds a SERVER_ADDR
environment variable for CGIs and mod_rewrite, partly because it's
easy and adds consistency, and partly because it allows mod_rewrite to
catch up with mod_vhost_alias's functionality :-) We don't use it at
Demon because it isn't standard and we don't need it.

f.a.n.finch   black dog

View raw message