Lighttpd to serve /var ?

Author Message

Jani Tarvainen

Monday 11 February 2008 12:27:03 am

Is there an option to set up the var-directory serving from a different source? I would be interested in serving static content from the /var -directory via lighttpd and everything else through Apache.

It's a no-brainer to set up lighttpd to serve /var in virtual host (say static.example.com), but how do I get eZ Publish to write the references to static.example.com instead of www.example.com?

In the RAILS-community people have done some stuff using Apache proxy features. http://www.howtoforge.com/reduce-apache-load-with-lighttpd-debian-etch I'm sure I could get it to work, but it seems... well. hackish.

And I'd prefer a real virtual host to circumvent the two connections per host limit (http://ajaxian.com/archives/using-cnames-to-get-around-browser-connection-limits). Sure it'd be even sweeter to have multiple static servers, say static1.example.com, static2.examp... and so forth. But that'd go over the top and it'd be easy to have issues with client-side caching if the domains for a resource change over time.

--
http://ezpublish.fi/

André R.

Monday 11 February 2008 1:10:17 am

> multiple static servers, say static1.example.com, static2.examp... and so forth.

2 connections per host is a browser specific setting, but anyway adding several host like that would cause a lot more work for the server (take a look at the 'KeepAlive' setting in most web servers).

When it comes to serving images and other downloads with another url, then you need to change all code that uses ezurl or ezroot for such files. You have settings there for getting it to generate absolute urls ("full") instead of relative url like it does by default.

But the problem is that I'm not entirly sure where it gets the domain name from, if it takes it from the current host header, then you're out of luck. But if it takes it from settings in site.ini, then you just have to fix all other urls on you site that uses this or forke the template operators and make them use a different setting..

rel:
http://ez.no/doc/ez_publish/technical_manual/4_0/reference/template_operators/urls/ezroot
http://ez.no/doc/ez_publish/technical_manual/4_0/reference/template_operators/urls/ezurl

eZ Online Editor 5: http://projects.ez.no/ezoe || eZJSCore (Ajax): http://projects.ez.no/ezjscore || eZ Publish EE http://ez.no/eZPublish/eZ-Publish-Enterprise-Subscription
@: http://twitter.com/andrerom

Jani Tarvainen

Monday 11 February 2008 1:50:22 am

Thanks for your reply. I was just wondering whether there's an out-of-the-box -setting for this. I'll have a closer look as we're far enough that this would be relevant :)

As for the domain to host static content... I think it might make sense to prepend static to the domain at hand. For example the static url for www.example.com could just aswell be static.www.example.com.

Another thing... Does anyone have any benchmark on using Apache's mod_mem_cache ( http://httpd.apache.org/docs/2.0/mod/mod_mem_cache.html )? Apparently it's still experimental, but is included with Debian Etch Apache2 package.

--
http://ezpublish.fi/

André R.

Monday 11 February 2008 3:46:45 am

mem cache seems to be stable if you use the most recent stable branch of Apache.
http://httpd.apache.org/docs/2.2/mod/mod_mem_cache.html

eZ Online Editor 5: http://projects.ez.no/ezoe || eZJSCore (Ajax): http://projects.ez.no/ezjscore || eZ Publish EE http://ez.no/eZPublish/eZ-Publish-Enterprise-Subscription
@: http://twitter.com/andrerom

Kim Johansen

Monday 11 February 2008 5:11:44 am

Hi,

I have done this setup on a high traffic site with rewrite, but it did not work as expected.

Apache will always use more resources for all requests if mod_php is enabled.

Another possible solution is to use a proxy or some kind of load-balancing in front of Apache. Lighttpd, squid or varnish is one of the possibilities.

Try out Free eZ Publish 4.0 Trial Hosting for 14 days:
http://webdealhosting.com/ez-publish-trial-hosting

High quality eZ Publish Hosting since 2001!

Jani Tarvainen

Monday 11 February 2008 5:33:31 am

> mem cache seems to be stable if you use the most recent stable branch of Apache.

Indeed it is. Note to self: Apache 2 != Apache 2.2 :)

--
http://ezpublish.fi/

Jani Tarvainen

Monday 11 February 2008 5:40:15 am

Thanks Kim,

> Apache will always use more resources for all requests if mod_php is enabled.

Exactly what I thought. Proxying lighttpd through Apache with mod_php seems pointless.

> Another possible solution is to use a proxy or some kind of load-balancing in front of Apache. Lighttpd, squid or varnish is one of the possibilities.

Yeah, I thought about using Squid IF we'll need to enable clustering. I know that'd ease the load on the 'ol database when we're fetching images, etc. from there.

But as of now, it looks like I'll just run everything through Apache to avoid extra components. I'll probably look into mod_mem_cache, etc.

--
Jani

--
http://ezpublish.fi/

Xavier Dutoit

Saturday 08 March 2008 7:27:30 am

Otherwise, a full setup in lighttpd + fastcgi works fine.

X+

http://www.sydesy.com

Norman Leutner

Tuesday 18 March 2008 4:57:53 am

http://ez.no/developer/open_funding/suggestions_for_new_functionality/http_acceleration_with_varnish

Mit freundlichen Grüßen
Best regards

Norman Leutner

____________________________________________________________
eZ Publish Platinum Partner - http://www.all2e.com
http://ez.no/partners/worldwide_partners/all2e_gmbh

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.