Re: [RFC] accel mode config changes

From: Henrik Nordström <henrik_at_henriknordstrom.net>
Date: Tue, 26 Jul 2011 22:31:44 +0200

mån 2011-07-25 klockan 13:57 +1200 skrev Amos Jeffries:

> It seems to me that since we are advertising HTTP/1.1 the default
> behaviour for accel mode should be vhost.

Agreed, defaults should match HTTP requirements, and Host awareness is a
rather strong HTTP/1.1 requirement. The default in HTTP/1.1 is to read
the Host header (unless URL is absolute) but a server MAY optionally
ignore the Host header if desired.

> Corollary: do we want to go so far as to make it "http_port _ vhost"?

Not sure what you mean. vhost is an accelerator directive. Does not make
sense in non-accelerator configurations.

> I think no to going this far since apache ip-based virtual hosting
> requires the "http_port _accel vport" (no vhost, no defaultsite). Which
> is effectively; disobey Host header and use the listening raw-IP:port as
> relayed header value for IP based virtual hosting in Apache. Noting that
> this behaviour is an HTTP violation and may as easily break the Apache
> VirtualHost as help.

?

Not sure what feature in Apache you talk about here. Why would Apache
need Squid to turn GET /; Host: www.example.com into GET / ; Host:
172.16.32.54:80

> 2) merging vhost and defaultsite=FQDN options
>
> Assuming (1) is done we can drop the defautsite= directive and some
> confusion around what 'default' and 'site' mean by making vhost=FQDN
> equivalent to 'vhost defaultsite=FQDN'.

defaultsite applies primarily to HTTP/1.0 requests without a Host
header. Without it such requests is not supported. I think it's name is
very appropriate as it is.

> Thoughts?

Make vhost default in accel mode, and deprecate the vhost directive as
such-

Add a novhost directive to disable vhost if not wanted for some strange
reason.

But please DO NOT do magic detection guessing if vhost default is
expected based on what other options are present. If it is made the
default (which is a good thing) then explicit action should be needed to
turn it off, just as explicit action have been needed to turn it on.

As a side note there is ongoing http-wg discussions if the HTTP/1.1
specs should add a recommendation that servers should reject requests
with unknown Host components.

Regards
Henrik
Received on Tue Jul 26 2011 - 20:31:50 MDT

This archive was generated by hypermail 2.2.0 : Wed Jul 27 2011 - 12:00:09 MDT