httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brian Behlendorf <>
Subject Re: more problems with Host:'s
Date Tue, 08 Oct 1996 07:51:20 GMT
On 3 Oct 1996, Dean Gaudet wrote:
> Here's two suggested approaches to properly fix this:
> - add a port -1 which becomes the wildcard port
> - pass the global server_conf in as a parm to get_addresses and use it
>     to set sar->host_port when the name has no :port tacked on.
>     (You also probably should fix get_virthost_addr which get_addresses
>     descended from when I did the multi-ip patch.)  Leave 0 as the
>     wildcard port.
> I'm partial to the second fix because I think of the global Port statement
> as meaning "pretend the HTTP specification says port N instead of 80".

Did anyone try this out yet?  This section of the code is like martian
territory to me, but if I have to I'll dive into it.  

> It has the implication that if a config looks like this:
>     Port 1111
>     <VirtualHost A>
>     ...
>     </VirtualHost>
>     Port 2222
>     <VirtualHost B>
>     ...
>     </VirtualHost>
> Then A and B will live on different ports.  But I think this is intuitive.

I disagree.  In my opinion order of directives in config files should be
completely insignificant; and multiple occurances of a directive which should
only appear once should be flagged as a non-fatal error but an error
nonetheless.  </rant>

> Brian asked if we should sit down and rethink the whole server selection
> process... we should.  But I doubt we can fit it in for 1.2.  Here's
> my input:
> - global Port becomes the default for any unspecified :port
> - never select a server unless the ip is in the addrs list
>     (remember we have a bug here right now)
> - never select a server unless the port matches
> - servers appearing earlier in the config file override servers appearing
>     later if there is a conflict (presently it's opposite)

I agree with 1 2 and 3, and with 4 with the caveat that I still think conflicts
should be flagged as errors instead of ignored. 



View raw message