cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Torsten Curdt <>
Subject Re: [VOTE] Adding "Expires" headers to pipelines
Date Sun, 26 May 2002 14:18:27 GMT
On Sunday 26 May 2002 15:37, Gianugo Rabellino wrote:
> After a long period of inactivity I was able to spend some time on
> Cocoon in this weekend. I must confess that I'm really impressed with
> the work going on so far: Schecooon, XMLForm, Treeprocessor and so on
> are making Cocoon plans for world domination much closer to reality :-)
> Thanks to everyone for this wonderful software!
> Now for the [VOTE] I'm calling. I'm recalling here the thread that I
> launched some time ago about cache friendly HTTP headers (see
> for details). I
> have a working[1]  version sitting on my hard drive of a sitemap
> extension which allows to set custom "Expires" headers for every
> pipeline. The syntax (and functionality, and scope...) is compatible
> with Apache's mod_expires (see
> from which the idea
> was stolen. With this modification you can configure a sitemap as follows:
> <pipeline expires="now plus 2 weeks">
>    <match pattern="images/**">
>      <read src="static/images/**" />
>    </match>
>    <match pattern="files/*.html">
>      <generate src="static/files/{1}.xml" />
>      <transform src="style/my.xsl" />
>      <serialize/>
>    </match>
> </pipeline>
> <pipeline expires="access plus 2 hours 15 minutes">
>     <match pattern="feed/*.html" />
>      <generate src="http://my-feed/{1}.rss" />
>      <transform src="style/my.xsl" />
>      <serialize/>
>    </match>
> </pipeline>
> <pipeline>
>     <match pattern="dynamic/*.html" />
>      <generate src="this/changes/everytime/{1}.xml" />
>      <transform src="style/my.xsl" />
>      <serialize/>
>    </match>
> </pipeline>
> Having in front of this setup a reverse proxy would massively help in
> building scalable sites, since many resources would be served by Cocoon
> only once in a while, with the proxy doing most of the job. My first
> tests are astonishing: with this setup scalability in most cases won't
> be an issue anymore. Not to mention usability in developing webapps:
> there would be no need anymore to mix and match static resources served
> by Apache for speed and scalability sake and synamic stuff served by
> your favourite app server: anything can be safely enclosed inside a
> webapp. Last but not least, this can be an enourmous bandwith saver.

I always thought this would be a good thing. Have you implemented it for the 
compiled sitemap, for the treeprocessor or for both?

> 1. Would you like this addition to be committed to HEAD? If so I promise
> to come up with documentations and a short HOWTO on how to connect a
> reverse proxy with Cocoon.


> 2. Would you like the "expires" settings to be available in the current
> ObjectModel so that the cache might become aware of it?



To unsubscribe, e-mail:
For additional commands, email:

View raw message