[Server-devel] Apache proxy CRCsync
Alex Wulms
alex.wulms at scarlet.be
Sun Mar 15 17:03:28 EDT 2009
Hi Toby,
I managed to get it working on my PC under suse 11.1 with apache 2.2.10.
When I configured a dedicated debug log per virtual server, I noticed that the
crccache_client and crccache_server modules were both invoked in both virtual
servers. Judging from the error log you sent me, that is also the case on
your server.
I have made following changes to fix the situation:
1) Move the 'CacheEnable crccache_client' directive (for the 'default' virtual
server) inside the <VirtualHost> tag. Apparently it is applied globally as
long as it is outside the <VirtualHost> tag, regardless of the config file in
which it appears.
2) Introduce a new directive 'CRCCacheServer on'.
This directive is checked by mod_crccache_server in the
crccache_server_header_parser_handler.
It is specified in the <VirtualHost> tag of the upstream_proxy of the virtual
server.
Apparently modules get loaded globally and functions like
the ..._header_parser_handler get invoked for each virtual server, so they
must check themselves if they should be enabled or disabled in a given
virtual server. I found this through google, which pointed me to a forum
where somebody else had faced a similar problem.
I also realize why I only found cached files
under /var/cache/apache2/mod_crccache_server and not under ..._client.
It is because the crccache_client.conf and crccache_server.conf file both use
the parameter CacheRoot to store the cache directory. These parameters are
apparently also global. The fact that they are in two different config files
does not automagically store them in a module specific namespace. So I have
renamed the parameters to differentiate between the client and the server
module.
I have also noticed that, although the server module reads these parameters,
they actually don't get used by the current code. Are they there due to
copy&paste reasons or are they already there for future enhancements, in
order to cache stuff temporary on the server side?
I have pushed my changes to the repository. Please review them. I'm still new
to Apache development so I might have misinterpreted some things.
Thanks and kind regards,
Alex
Op zondag 15 maart 2009, schreef Toby Collett:
> Not much time to work on crcsync this weekend, but I have enabled block
> replacement, so in theory the latest version in git should be able to be
> used to serve web pages.
>
> Toby
More information about the Server-devel
mailing list