Re: [squid-users] ESI support in SQUID

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Fri, 20 Apr 2012 23:57:57 +1200

On 19/04/2012 9:06 p.m., Dirk Högemann wrote:
> Hi,
>
> I am trying to run SQUID with ESI support (parser is custom).

Squid version?

>
> This works fine until processed pages reference for example Javascript files
> with filesize bigger than 64K.
> In that case SQUID crashes.
> LOG:
>
> 2012/04/19 10:47:19.295| clientStreamCallback: Calling 1 with cbdata
> 0x85ecfac from node 0x85dbde0
> 2012/04/19 10:47:19.295| esiProcessStream: Processing thisNode 0x86345d0
> context 0x85ecf20 offset 65126 length 4096
> 2012/04/19 10:47:19.295| assertion failed: String.cc:197: "len_ + len<
> 65536"
>
>
>
> Are there any workaround for this issue?

No. Squid has a hard-coded string length limit of 64KB. ESI needs a
re-write to work without the string buffer, possibly to stream the
construced reply straight to client or chunk it into 64KB pieces.

> Or is it possible to configure SQUID in a way to skip ESI processing for
> example files/content by url path?

ESI processing is determined by the origin web server. The Surrogate-*
header targets a particular surrogate proxy to initiate ESI processing
(or not) per-request.

PS. "SQUID" is an electronic component like a diode. "Squid" is the proxy.

Amos
Received on Fri Apr 20 2012 - 11:58:04 MDT

This archive was generated by hypermail 2.2.0 : Fri Apr 20 2012 - 12:00:04 MDT