Now this is fairly techie, so forgive me if you were looking for some Domino stuff. I will post some soon, promise!

Anyway, I was reading Russell's site today and he had an interesting post all about caching one's website. You can read it here. In a round-about way, this blog entry led me to an excellent caching tutorial written by Mark Nottingham. For example, did you know that meta tags are pretty feeble when it comes to controlling your site's refresh rate?

Meta tags are easy to use, but aren't very effective. That's because they're usually only honored by browser caches (which actually read the HTML), not proxy caches (which almost never read the HTML in the document). While it may be tempting to slap a Pragma: no-cache meta tag on a home page, it won't necessarily cause it to be kept fresh, if it goes through a shared cache.

Russell's particular issue related to JSP sessions being switched on by default. This is so easy to do… I've done it myself. So, if you're coding some JSP stuff ask yourself this: do I need sessions enabled? If not, check that they're switched off in your page directive:

<% @page import="… session="false"… %>


  1. There is a new article in LDD Today which describes how to implement caching in Domino in Domino 6 using the @SetHTTPHeaders command. I applied it to my site last week with limited success due to bugs in Domino 6. Domino 6.01 will solve the problem and I think I read somewhere that $CacheValid will be making a comeback also.

    john marshall#
  2. Thanks for that John. @SetHTTPHeaders is timely, because for the developer, modifying HTTP headers is crucial to resolving these caching issues in the first place.

    (I read about $CacheValid too, so you're not going mad! ;-)

    Ben Poole#
  3. Got a blog template out next mon (feb 10th) works with no caching problems - r5 and r6 - is sorted in the forms/template - so no developer 'fudges' required

    Steve Castledine#
  4. Steve, you are truly a shameless plugger…

    To be fair to Domino, this kind of stuff is required for any site, regardless of platform… it's just that it's taken 'til 6.01 for this to come under the developer's control in any meaningful way.

    Ben Poole#
  5. I know - very shameless - but I am usually the first to plug anyone else - so for now i dont feel guilty!

    cheers ben
    - steve

    Steve Castledine#

Comments on this post are now closed.


I’m a software architect / developer / general IT wrangler specialising in web, mobile web and middleware using things like node.js, Java, C#, PHP, HTML5 and more.

Best described as a simpleton, but kindly. You can read more here.