<?xml version="1.0"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Transition Technology: Ticket #224: Add Varnish cache</title>
    <link>http://localhost:8080/trac/ticket/224</link>
    <description>&lt;p&gt;
This is a critical feature of a resilient, efficient Drupal website IMHO... It provides:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;More value for money from the existing hosting package &amp;amp; server
&lt;/li&gt;&lt;li&gt;Much faster response times for anonymous users
&lt;/li&gt;&lt;li&gt;Vastly faster response times for logged in users (since &lt;a class="missing wiki"&gt;Drupal/Apache?&lt;/a&gt;/MySQL are freer to handle those requests)
&lt;/li&gt;&lt;li&gt;More resilience: 'Slashdot effect'-proof; faster, safer web services requests
&lt;/li&gt;&lt;li&gt;Better uptime (probably!)
&lt;/li&gt;&lt;li&gt;Ability to handle low-level DDoS attacks
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Adding this ticket in the hope it gets some love...
&lt;/p&gt;
</description>
    <language>en-us</language>
    <image>
      <title>Transition Technology</title>
      <url>/trac/chrome/site/TransitionNetwork-Logo-Web-Small.jpg</url>
      <link>http://localhost:8080/trac/ticket/224</link>
    </image>
    <generator>Trac 0.12.5</generator>
    <item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 27 Jan 2011 19:36:49 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:1</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:1</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Update:
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="http://pressflow.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;PressFlow&lt;/a&gt; - a minor fork of Drupal 6 with big improvements in scalablilty and other nice enhancements - is required for Varnish or any other reverse proxy to work.
&lt;/p&gt;
&lt;p&gt;
Installed on the &lt;a class="ext-link" href="http://news.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;Sharing Engine&lt;/a&gt; with no side effects apart from needing PHP's error level to be dropped to
&lt;tt&gt;error_reporting  =  E_ALL &amp;amp; ~E_NOTICE&lt;/tt&gt; from just E_ALL.
&lt;/p&gt;
&lt;p&gt;
Some modules (e.g. &lt;a class="missing wiki"&gt;LoginToboggan?&lt;/a&gt;) might have issues with &lt;a class="missing wiki"&gt;PressFlow?&lt;/a&gt;... Will need careful testing in addition to careful configuration.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 27 Jan 2011 19:48:36 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:2</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:2</guid>
      <description>
        &lt;p&gt;
Ticket tiding: See also now closed &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/161" title="defect: Project Mercury and the Varnish Accelerating Proxy (closed: duplicate)"&gt;#161&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Varnish + Pressflow in 'Project Mercury': &lt;a class="ext-link" href="http://library.linode.com/development/frameworks/php/project-mercury/debian-5-lenny"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://library.linode.com/development/frameworks/php/project-mercury/debian-5-lenny&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Fri, 17 Jun 2011 16:24:46 GMT</pubDate>
      <title>owner, status changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:3</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:3</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;owner&lt;/strong&gt;
              changed from &lt;em&gt;jim&lt;/em&gt; to &lt;em&gt;chris&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;
                changed from &lt;em&gt;new&lt;/em&gt; to &lt;em&gt;assigned&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
OK...
&lt;/p&gt;
&lt;p&gt;
Pressflow lives here: &lt;a class="ext-link" href="https://launchpad.net/pressflow"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://launchpad.net/pressflow&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
I've downloaded it and installed it locally on the TN project - no issues, which is good since it's supposed to be a drop-in replacement.
&lt;/p&gt;
&lt;p&gt;
It'll go to DEV once the other file-level bits are completed...
&lt;/p&gt;
&lt;p&gt;
Handing this ticket to Chris to continue the love...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 20 Jun 2011 14:00:05 GMT</pubDate>
      <title>status changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:4</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:4</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;
                changed from &lt;em&gt;assigned&lt;/em&gt; to &lt;em&gt;accepted&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
What exactly do I need to do for this?
&lt;/p&gt;
&lt;p&gt;
Follow the steps here?
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="http://library.linode.com/application-stacks/project-mercury/debian-5-lenny"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://library.linode.com/application-stacks/project-mercury/debian-5-lenny&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Mon, 20 Jun 2011 17:19:11 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:5</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:5</guid>
      <description>
        &lt;p&gt;
That seems like a very good start... Minus the Solr stuff.
&lt;/p&gt;
&lt;p&gt;
We need two more modules: Varnish and Memcache
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Varnish is here &lt;a class="ext-link" href="http://drupal.org/project/varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/varnish&lt;/a&gt; - some more good links there Chris, note it supports Varnish 2.0.x and 2.1.x, not 3.x
&lt;/li&gt;&lt;li&gt;Memcache is here &lt;a class="ext-link" href="http://drupal.org/project/memcache"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/memcache&lt;/a&gt; - seems to integrate with Cacherouter, which is already up and running.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
I've added these two to SVN too.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Mon, 20 Jun 2011 17:20:27 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:6</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:6</guid>
      <description>
        &lt;p&gt;
Are you gonna want Drush, too? Might be a good idea to have it up there anyway...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 21 Jun 2011 09:54:59 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:7</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:7</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.0&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;0.1&lt;/em&gt; to &lt;em&gt;1.1&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
OK, the live server has apc &lt;a class="wiki" href="http://localhost:8080/trac/wiki/NewLiveServer#apc"&gt;wiki:NewLiveServer#apc&lt;/a&gt; and memcache &lt;a class="wiki" href="http://localhost:8080/trac/wiki/NewLiveServer#memcache"&gt;wiki:NewLiveServer#memcache&lt;/a&gt; already, the dev server isn't running memcache for some reason.
&lt;/p&gt;
&lt;p&gt;
The version of varnish in debian lenny is 1.1.2 and the module, &lt;a class="ext-link" href="http://drupal.org/project/varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/varnish&lt;/a&gt; requires Varnish 2.0.x and Varnish 2.1.x.
&lt;/p&gt;
&lt;p&gt;
So I'll follow the instructions here: &lt;a class="ext-link" href="http://www.varnish-cache.org/installation/debian"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.varnish-cache.org/installation/debian&lt;/a&gt; the other option is using the backports version: &lt;a class="ext-link" href="http://packages.debian.org/lenny-backports/varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://packages.debian.org/lenny-backports/varnish&lt;/a&gt; but I think we might as well use the vendor version.
&lt;/p&gt;
&lt;p&gt;
I'll document it here: &lt;a class="wiki" href="http://localhost:8080/trac/wiki/DevelopmentServer#Varnish"&gt;wiki:DevelopmentServer#Varnish&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
I have realised that varnish sits in front of apache, this complicates things as we are not just serving one site off these servers, I'm going to need to read some documentation and think about this for a while...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 21 Jun 2011 11:45:17 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:8</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:8</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.4&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;1.1&lt;/em&gt; to &lt;em&gt;2.5&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
If we use Varnish to proxy authenticated requests we are going to have to be extra careful with it security wise to make sure there are no leaks -- for example a authenticated page being cached and then served to another user.
&lt;/p&gt;
&lt;p&gt;
I'd rather have all authenticated sessions for all web applications use HTTPS only and if this needs to be accelerated use a server which can do HTTPS like &lt;a class="ext-link" href="http://nginx.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://nginx.org/&lt;/a&gt; and use that for static content and proxy dynamic content to apache.
&lt;/p&gt;
&lt;p&gt;
Having Varnish only serving anon content would make things simpler, especially as we have to set it up for two drupal instances, www.transitionnetwork.org and news.transitionnetwork.org one mediawiki site, wiki.transitionnetwork.org the static archive, static.transitionnetwork.org and then all the domain redirects and also the other applications running on the server like munin and phpMyAdmin etc.
&lt;/p&gt;
&lt;p&gt;
But the HTTPS for all authenticated sessions discussion is due for the next Skype chat, so I don't really want to pre-empt that but also want to get on with sorting this issue out... for now I'll do some more reading and thinking!
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 21 Jun 2011 14:14:16 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:9</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:9</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.0&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;2.5&lt;/em&gt; to &lt;em&gt;3.5&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Only allowing HTTPS authenticated sessions using the 443 Session module &lt;a class="ext-link" href="http://drupal.org/project/session443"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/session443&lt;/a&gt; and this patch to allow anon HTTPS &lt;a class="ext-link" href="http://drupal.org/node/1154618"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/node/1154618&lt;/a&gt; is my suggestion and not using &lt;a class="ext-link" href="http://nginx.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://nginx.org/&lt;/a&gt; at this stage for HTTPS.
&lt;/p&gt;
&lt;p&gt;
Currently Apache is using on average 1.23Gb of the live servers 2Gb of RAM and this bursts past 2Gb at times (this is when the server starts to swap), see: &lt;a class="ext-link" href="https://kiwi.transitionnetwork.org/munin/webarch.net/quince.webarch.net-multimemory.html"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://kiwi.transitionnetwork.org/munin/webarch.net/quince.webarch.net-multimemory.html&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Varnish will need some dedicated RAM and this will have to come from the amount Apache uses.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Tue, 21 Jun 2011 14:32:02 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:10</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:10</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.15&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;3.5&lt;/em&gt; to &lt;em&gt;3.65&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;ul&gt;&lt;li&gt;Session443 now in SVN - that plus other modules for this ticket waiting on &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/265" title="enhancement: Ingredients pages (closed: fixed)"&gt;#265&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;Patch manually applied, committed.
&lt;/li&gt;&lt;li&gt;I'd wager these memory spikes are due to developer activity - I've been adding Content Types and fields today which would require lots of database work and caches to be dumped.
&lt;/li&gt;&lt;li&gt;I'd also wager that less Apache &amp;amp; PHP thread usage due to caching will gain us some memory back/
&lt;/li&gt;&lt;li&gt;I assume there will be a period of tuning where you keep an eye on the stats and tweak accordingly?
&lt;/li&gt;&lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 22 Jun 2011 09:40:34 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:11</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:11</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.25&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;3.65&lt;/em&gt; to &lt;em&gt;3.9&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
OK, can we test varnish on the dev server -- is Session 443 etc ready to roll on the dev site?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Wed, 22 Jun 2011 10:43:09 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:12</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:12</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.25&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;3.9&lt;/em&gt; to &lt;em&gt;4.15&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Session 443 on DEV and enabled, have copied in the exceptions from Secure Pages on LIVE to ensure AJAX etc works fine - will test that aspect another time.
&lt;/p&gt;
&lt;p&gt;
It's set to force https for all users and login pages, and normal http for non-authenticated users (except login/registration of course).
&lt;/p&gt;
&lt;p&gt;
FYI settings here: &lt;a class="ext-link" href="https://dev.transitionnetwork.org.webarch.net/admin/settings/session443"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org.webarch.net/admin/settings/session443&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 22 Jun 2011 10:59:21 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:13</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:13</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;4.15&lt;/em&gt; to &lt;em&gt;4.25&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
It's set to force https for all users and login pages, and normal http for non-authenticated users (except login/registration of course).
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
I think we should allow non authenticated users to use HTTPS if they wish so I think "Force HTTP for anonymous users:" should be disabled, I'll change this setting and have a play with it on the dev server at the same time as sorting &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/166" title="defect: certs / domain names for dev and test sites (closed: fixed)"&gt;ticket:166&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Wed, 22 Jun 2011 11:01:35 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:14</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:14</guid>
      <description>
        &lt;p&gt;
OK...
&lt;/p&gt;
&lt;p&gt;
FYI Varnish and Memcache modules now are on DEV, but not yet enabled.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 23 Jun 2011 10:53:17 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:15</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:15</guid>
      <description>
        &lt;p&gt;
Chris, a thought:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
Having Varnish only serving anon content would make things simpler, especially as we have to set it up for two drupal instances, www.transitionnetwork.org and news.transitionnetwork.org one mediawiki site, wiki.transitionnetwork.org the static archive, static.transitionnetwork.org and then all the domain redirects and also the other applications running on the server like munin and phpMyAdmin etc.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Do we really need wiki and other non-Drupal stuff passing through Varnish?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 23 Jun 2011 11:01:42 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:16</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:16</guid>
      <description>
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Do we really need wiki and other non-Drupal stuff passing through Varnish?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Yes if these things are running on the same server on port 80 -- we can have either apache on port 80 or varnish, not both.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 23 Jun 2011 11:45:38 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:17</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:17</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.5&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;4.25&lt;/em&gt; to &lt;em&gt;4.75&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Simple &lt;a class="missing wiki"&gt;Varnish/Debian?&lt;/a&gt; install notes:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://www.howtoforge.com/putting-varnish-in-front-of-apache-on-ubuntu-debian"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.howtoforge.com/putting-varnish-in-front-of-apache-on-ubuntu-debian&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Plus Drupal:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://www.web-a-team.com/blog-post/installing-varnish-debian-lenny"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.web-a-team.com/blog-post/installing-varnish-debian-lenny&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://blogs.osuosl.org/gchaix/2009/10/12/pressflow-varnish-and-caching/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://blogs.osuosl.org/gchaix/2009/10/12/pressflow-varnish-and-caching/&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://me.andering.com/2010/12/17/drupal-varnish-and-pressflow-fast-delivery-to-the-customer-with-some-speed-for-users-too/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://me.andering.com/2010/12/17/drupal-varnish-and-pressflow-fast-delivery-to-the-customer-with-some-speed-for-users-too/&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="https://wiki.fourkitchens.com/display/PF/Configure+Varnish+for+Pressflow"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://wiki.fourkitchens.com/display/PF/Configure+Varnish+for+Pressflow&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://library.linode.com/application-stacks/project-mercury/debian-5-lenny?format=print"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://library.linode.com/application-stacks/project-mercury/debian-5-lenny?format=print&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
One key question: are cookies used for anything for anon users? It would be nice to simply remove them all.
&lt;/p&gt;
&lt;p&gt;
Also we will need to make sure that we don't break Piwik tracking.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Thu, 23 Jun 2011 11:50:21 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:18</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:18</guid>
      <description>
        &lt;p&gt;
on the cookie front Laura's got a ticket to keep us roughly in line with recent EC/UK changes:
&lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/258" title="enhancement: Write and publish a cookies statement (closed: fixed)"&gt;#258&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 23 Jun 2011 11:51:00 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:19</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:19</guid>
      <description>
        &lt;p&gt;
As per my other note &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/276#comment:2" title="defect: HTTPS for all Authenticated Sessions (closed: fixed)"&gt;ticket:276#comment:2&lt;/a&gt;, I cannot think of any off the top of my head.
&lt;/p&gt;
&lt;p&gt;
Here's the readme from that module:
&lt;/p&gt;
&lt;p&gt;
&lt;em&gt;Description
&lt;/em&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;
The no_anon module eliminates the need for sessions for anonymous users
&lt;/p&gt;
&lt;p&gt;
This has the potential to reduce the server load and/or database contention on busy
sites, since crawlers do not create entries in the session table for every page view.
&lt;/p&gt;
&lt;p&gt;
Side effects
&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;
Some modules use the $_SESSION superglobal variable to store info for anonymous users
will be affected by this module. If your modules use this only for logged in users,
then it will not be an issue. Before you install this module, make sure that your modules
do not depend on that.
&lt;/p&gt;
&lt;p&gt;
This approach is known to cause the following features not to work:
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;The core Who's Online block
&lt;/li&gt;&lt;li&gt;The core Throttle module
&lt;/li&gt;&lt;li&gt;The anonymous user count in the Administration Menu module.
&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;
Installation
&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;
To install this module, do the following:
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Extract the tarball into your sites/all/modules directory.
&lt;/li&gt;&lt;li&gt;Enable the module from admin/build/modules
&lt;/li&gt;&lt;li&gt;You then must change your settings.php file to add the following line
towards the end of the file:
&lt;/li&gt;&lt;/ol&gt;&lt;blockquote&gt;
&lt;p&gt;
$conf&lt;a class="missing wiki"&gt;session_inc?&lt;/a&gt; = './sites/all/modules/no_anon/session-no-anon.inc';
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;
Adjust the above to point to where you installed the module, e.g.
'./sites/example.com/modules/no_anon/session-no-anon.inc' if that
is where you installed it.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
FAQ
---
Q: Help! I can no longer log in to my web site!
&lt;/p&gt;
&lt;p&gt;
A: Most likely, you've forgotten to enable the No Anonymous module. It is not
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
enough to have the session_inc change above. Without the no_anon module,
cookies will remain disabled at all times. The result is that while you
can log in, your session ID will not be stored in your browser (because
it couldn't store it in a cookie), which makes it impossible to remain
logged in.&lt;em&gt;
&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 23 Jun 2011 11:57:27 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:20</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:20</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;4.75&lt;/em&gt; to &lt;em&gt;4.85&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
This approach is known to cause the following features not to work:
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;The core Who's Online block
&lt;/li&gt;&lt;/ol&gt;&lt;/blockquote&gt;
&lt;p&gt;
Do we need this since we have Piwik tracking which can give this info.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;ol start="2"&gt;&lt;li&gt;The core Throttle module
&lt;/li&gt;&lt;/ol&gt;&lt;/blockquote&gt;
&lt;p&gt;
Won't be an issue since Varnish should be serving cached content and the back end apache/php/mysql won't be hit for anon users.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;ol start="3"&gt;&lt;li&gt;The anonymous user count in the Administration Menu module.
&lt;/li&gt;&lt;/ol&gt;&lt;/blockquote&gt;
&lt;p&gt;
Again we can get this into from Piwik.
&lt;/p&gt;
&lt;p&gt;
Notes on how to debug Varnish caching:
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="http://www.stewsnooze.com/content/what-stopping-varnish-and-drupal-pressflow-caching-anonymous-users-page-views"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.stewsnooze.com/content/what-stopping-varnish-and-drupal-pressflow-caching-anonymous-users-page-views&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 23 Jun 2011 12:05:21 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:21</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:21</guid>
      <description>
        &lt;p&gt;
We don't need the Who's online stuff or the counter or the throttle mod. And Piwik adds JS to the page that calls an external source (DEV) so the those stats will be unaffected, just the counter on the top-right of the black Admin Menu.
&lt;/p&gt;
&lt;p&gt;
I suppose we just need to tread carefully. There are A LOT of modules running and it's quite possible some of those use the anonymous session.
&lt;/p&gt;
&lt;p&gt;
So I suppose the best approach is to hope we can drop the anon sessions, but have a backup plan for Varnish if it turns out that's not possible. Is there such a plan, extra config aside, or is this a potential show-stopper?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 23 Jun 2011 12:10:38 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:22</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:22</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.05&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;4.85&lt;/em&gt; to &lt;em&gt;4.9&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
I suppose we just need to tread carefully. There are A LOT of modules running and it's quite possible some of those use the anonymous session.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Right, agreed.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
So I suppose the best approach is to hope we can drop the anon sessions, but have a backup plan for Varnish if it turns out that's not possible. Is there such a plan, extra config aside, or is this a potential show-stopper?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
No that's fine, I suggest we start by testing if the no_anon &lt;a class="ext-link" href="http://drupal.org/project/no_anon"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/no_anon&lt;/a&gt; module can be used without any bad side effects. If it can then we won't need to do any cookie munging at a Varnish level.
&lt;/p&gt;
&lt;p&gt;
If the no_anon module causes some problems with things not working for anon users then we can remove it and look at cookie munging at a Varnish level -- strip them from parts of the site where they are not needed to enable things to be cached.
&lt;/p&gt;
&lt;p&gt;
Does that sound like an OK plan?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 23 Jun 2011 12:12:02 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:23</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:23</guid>
      <description>
        &lt;p&gt;
I've pushed the module through SVN to DEV, and enabled it.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 23 Jun 2011 12:19:30 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:24</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:24</guid>
      <description>
        &lt;p&gt;
And updated settings.php... Should be working now.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 23 Jun 2011 12:43:24 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:25</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:25</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.2&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;4.9&lt;/em&gt; to &lt;em&gt;5.1&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Still isn't working -- I'm seeing session cookies for anon users.
&lt;/p&gt;
&lt;p&gt;
Some varnish cookie examples:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://www.varnish-cache.org/trac/wiki/VCLExampleRemovingSomeCookies"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.varnish-cache.org/trac/wiki/VCLExampleRemovingSomeCookies&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://www.varnish-cache.org/trac/wiki/VCLExampleCacheCookies"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.varnish-cache.org/trac/wiki/VCLExampleCacheCookies&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
A handy looking script:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="https://kristianlyng.wordpress.com/2010/08/13/stripping-cookies-with-vcl/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://kristianlyng.wordpress.com/2010/08/13/stripping-cookies-with-vcl/&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Fri, 24 Jun 2011 10:14:52 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:26</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:26</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.5&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;5.1&lt;/em&gt; to &lt;em&gt;5.6&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Varnish with it's default configuration is now running on port 80 on the dev server and apache is now on port 8080 and 443, so these pages come via Varnish:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://dev.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://dev.transitionnetwork.org/&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://kiwi.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://kiwi.transitionnetwork.org/&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://wiki.dev.transitionnetwork.org/Main_Page"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://wiki.dev.transitionnetwork.org/Main_Page&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Now for some more testing and experiments -- the Drupal Varnish module can be enabled.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Fri, 24 Jun 2011 12:22:47 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:27</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:27</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.7&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;5.6&lt;/em&gt; to &lt;em&gt;6.3&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
More Varnish notes here:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://www.varnish-cache.org/docs/2.1/tutorial/increasing_your_hitrate.html"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.varnish-cache.org/docs/2.1/tutorial/increasing_your_hitrate.html&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="https://kristianlyng.wordpress.com/2010/01/26/varnish-best-practices/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://kristianlyng.wordpress.com/2010/01/26/varnish-best-practices/&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Enabling Munin starts, &lt;a class="ext-link" href="https://github.com/jnstq/munin-varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://github.com/jnstq/munin-varnish&lt;/a&gt;
&lt;/p&gt;
&lt;pre class="wiki"&gt;aptitude install git-core
cd /usr/share/munin/plugins
git clone git://github.com/basiszwo/munin-varnish.git
chmod a+x /usr/share/munin/plugins/munin-varnish/varnish_*
ln -s /usr/share/munin/plugins/munin-varnish/varnish_* /etc/munin/plugins/
&lt;/pre&gt;&lt;p&gt;
Add the following to the end of /etc/munin/plugin-conf.d/munin-node
&lt;/p&gt;
&lt;pre class="wiki"&gt;[varnish*]
user root
&lt;/pre&gt;&lt;p&gt;
Restart the node, &lt;tt&gt;/etc/init.d/munin-node restart&lt;/tt&gt; and stats should start to appear here:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="https://kiwi.transitionnetwork.org/munin/webarch.net/kiwi.webarch.net.html#Varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://kiwi.transitionnetwork.org/munin/webarch.net/kiwi.webarch.net.html#Varnish&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Fri, 24 Jun 2011 13:00:59 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:28</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:28</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.5&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;6.3&lt;/em&gt; to &lt;em&gt;6.8&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Cookies, mediawiki at &lt;a class="ext-link" href="http://wiki.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://wiki.transitionnetwork.org/&lt;/a&gt; were being set and also sent to the drupal site, these have been stopped by adding this to LocalSettings.php on the live and dev server:
&lt;/p&gt;
&lt;pre class="wiki"&gt;$wgCookieSecure = true;
&lt;/pre&gt;&lt;p&gt;
I wonder if we should also set only secure cookies with Drupal, according to a comment, &lt;a class="ext-link" href="http://www.turnkeylinux.org/blog/we-dont-need-no-stinking-ssl"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.turnkeylinux.org/blog/we-dont-need-no-stinking-ssl&lt;/a&gt; this in settings.php should do it:
&lt;/p&gt;
&lt;pre class="wiki"&gt;ini_set('session.cookie_secure',  1);
&lt;/pre&gt;&lt;p&gt;
Which parts of the site *require* cookies for non-authenticated users?
}}}
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Fri, 24 Jun 2011 13:12:18 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:29</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:29</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;6.8&lt;/em&gt; to &lt;em&gt;6.9&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
For the moment I have set Varnish to remove *all* cookies on  &lt;a class="ext-link" href="http://dev.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://dev.transitionnetwork.org/&lt;/a&gt; via these rules in /etc/varnish/default.vcl:
&lt;/p&gt;
&lt;pre class="wiki"&gt;sub vcl_recv {
    unset req.http.Cookie;
}
sub vcl_fetch {
    unset beresp.http.set-cookie;
}
&lt;/pre&gt;&lt;p&gt;
The idea being we can now check to see what, if anything has broken...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Fri, 24 Jun 2011 14:43:10 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:30</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:30</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.0&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;6.9&lt;/em&gt; to &lt;em&gt;7.9&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
I did add this to settings.php for a while to ensure only secure cookies are set but it appears to me at the moment that this isn't needed:
&lt;/p&gt;
&lt;pre class="wiki"&gt;if (!empty($_SERVER['HTTPS']) &amp;amp;&amp;amp; $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) {
  ini_set('session.cookie_secure', 1);
}
&lt;/pre&gt;&lt;p&gt;
This is what the cookie that anon users get when they visit a HTTPS page looks like:
&lt;/p&gt;
&lt;pre class="wiki"&gt;Set-Cookie: SESS86fe0bba91cd08c27fa111a4ec66ede1=8381d5e2b6f01d56c57804072bffaa5d; expires=Sun, 17 Jul 2011 18:13:09 GMT; path=/; domain=.dev.transitionnetwork.org; secure; HttpOnly
&lt;/pre&gt;&lt;p&gt;
One thing I can't work out is what browser I can use on Linux which will give me mixed http and https content warnings, there doesn't seem to be a way to enable this with Firefox -- any suggestions?
&lt;/p&gt;
&lt;p&gt;
I haven't been able to find anything that breaks with all HTTP cookies removed by Varnish, but I'm probably not looking in the right place -- anyone have any hints?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Fri, 24 Jun 2011 15:46:17 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:31</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:31</guid>
      <description>
        &lt;p&gt;
I use Chromium - makes the padlock logo have a warning you can click if there's such a problem.
&lt;/p&gt;
&lt;p&gt;
I also run IE 6 and 7 inside a virtualbox windows image if I want to feel really dirty!
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 08:53:10 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:32</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:32</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.3&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;7.9&lt;/em&gt; to &lt;em&gt;8.2&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
All cookies generated by the https version of the site should have the secure flag set -- if they don't then they will be sent to the server when pages are accessed using http and will potentially stop varnish caching pages.
&lt;/p&gt;
&lt;p&gt;
I'm seeing non-secure cookies on the https version of the site on images and js etc, eg:
&lt;/p&gt;
&lt;pre class="wiki"&gt;Cookie: NO_CACHE=Y; SESS311518397b2e496470fa7d208995f24c=c20665c6c4d8218a634946f2ea653db9; DRUPAL_UID=1
&lt;/pre&gt;&lt;p&gt;
This cookie is set on login, I have tried added this to &lt;tt&gt;/etc/php5/apache2/php.ini&lt;/tt&gt;:
&lt;/p&gt;
&lt;pre class="wiki"&gt;session.cookie_secure = 1
&lt;/pre&gt;&lt;p&gt;
But there is still this insecure cookie being set, anyone know if there is anything we can do about this and what code adds this (I assume it's a core Drupal thing?).
And this seems to have solved this and I don't think there are any PHP applications we are running that this will break?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 08:57:41 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:33</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:33</guid>
      <description>
        &lt;p&gt;
Oops, Cookie line above isn't the right one, this is the HTTP header which sets an insecure cookie:
&lt;/p&gt;
&lt;pre class="wiki"&gt;Set-Cookie: NO_CACHE=Y; expires=Mon, 27-Jun-2011 09:05:10 GMT; path=/; domain=.dev.transitionnetwork.org
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 10:00:54 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:34</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:34</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.4&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;8.2&lt;/em&gt; to &lt;em&gt;8.6&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
To further sort varnish out I think we need to enable the drupal varnish module -- Jim can you do that or tell me how to do it?
&lt;/p&gt;
&lt;p&gt;
At the moment I'm seeing varnish cache css and images but not web pages, the headers for pages contain:
&lt;/p&gt;
&lt;pre class="wiki"&gt;X-Drupal-Cache: HIT
X-Varnish-Cache: MISS
&lt;/pre&gt;&lt;p&gt;
So varnish is currently just acting as a proxy for web pages and perhaps the varnish module will enable us to solve this?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 10:36:29 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:35</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:35</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.2&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;8.6&lt;/em&gt; to &lt;em&gt;8.8&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Are you gonna want Drush, too? Might be a good idea to have it up there anyway...
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
It's installed:
&lt;/p&gt;
&lt;pre class="wiki"&gt;cd /usr/local
wget http://ftp.drupal.org/files/projects/drush-7.x-4.4.tar.gz
tar -zxvf drush-7.x-4.4.tar.gz
cd /usr/local/bin
ln -s ../drush/drush
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 11:06:58 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:36</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:36</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.2&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;8.8&lt;/em&gt; to &lt;em&gt;9.0&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Looking at &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/performance"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/settings/performance&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
I'm playing with:
&lt;/p&gt;
&lt;pre class="wiki"&gt;Caching mode:
  Disabled
  External (experts only, possible side effects)
&lt;/pre&gt;&lt;p&gt;
With it set to External there is no &lt;a class="missing wiki"&gt;[X-Drupal-Cache?&lt;/a&gt;] header but still a &lt;tt&gt;X-Varnish-Cache: MISS&lt;/tt&gt; header, however I don't see hits to the back end apache,  so I'm wondering of the code to generate that &lt;tt&gt;X-Varnish-Cache&lt;/tt&gt; actually works, it was taken from here: &lt;a class="ext-link" href="http://www.stewsnooze.com/content/what-stopping-varnish-and-drupal-pressflow-caching-anonymous-users-page-views"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.stewsnooze.com/content/what-stopping-varnish-and-drupal-pressflow-caching-anonymous-users-page-views&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
However if Caching mode: is set to Disabled then we have &lt;tt&gt;X-Varnish-Cache: HIT&lt;/tt&gt; and still no back end apache hits.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Mon, 27 Jun 2011 11:16:39 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:37</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:37</guid>
      <description>
        &lt;p&gt;
Varnish module already (since &lt;a class="missing wiki"&gt;Fri/Sat?&lt;/a&gt;) enabled on DEV: &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/build/modules"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/build/modules&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
No idea what is creating that cookie presently... Hmm.
&lt;/p&gt;
&lt;p&gt;
And does Varnish (or &lt;a class="missing wiki"&gt;CacheRouter?&lt;/a&gt; etc) need chagnes to the lines in Settings.php?
&lt;/p&gt;
&lt;p&gt;
More info here you might find helpful: &lt;a class="ext-link" href="http://groups.drupal.org/pantheon/documentation"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://groups.drupal.org/pantheon/documentation&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 11:34:09 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:38</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:38</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;9.0&lt;/em&gt; to &lt;em&gt;9.1&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Ah OK, so the varnish module is one which has no interface? Is there a settings file for it or anything I need to look at?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 12:10:40 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:39</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:39</guid>
      <description>
        &lt;p&gt;
We were adding headers at an apache level, I have commented this out:
&lt;/p&gt;
&lt;pre class="wiki"&gt;  &amp;lt;FilesMatch "(\.html|\.html\.gz|\.xml|\.xml\.gz)$"&amp;gt;
    &amp;lt;IfModule mod_headers.c&amp;gt;
      Header set Expires "Sun, 19 Nov 1978 05:00:00 GMT"
      Header set Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0"
    &amp;lt;/IfModule&amp;gt;
  &amp;lt;/FilesMatch&amp;gt;
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 13:13:38 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:40</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:40</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.0&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;9.1&lt;/em&gt; to &lt;em&gt;10.1&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
OK, once Varnish has cached a page it's *really* fast!
&lt;/p&gt;
&lt;p&gt;
For example 100 requests fro the front page (no css js or images) from another server in the same colo:
&lt;/p&gt;
&lt;pre class="wiki"&gt;ab -v 4 -n 1000 -H "Accept-Encoding: gzip" http://dev.transitionnetwork.org/
Time taken for tests:   2.077 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      7782000 bytes
HTML transferred:       7341000 bytes
Requests per second:    481.36 [#/sec] (mean)
&lt;/pre&gt;&lt;p&gt;
480 requests per second isn't bad :-)
&lt;/p&gt;
&lt;p&gt;
One thing I have noticed, the CSS and JS has generated file names, for example:
&lt;/p&gt;
&lt;pre class="wiki"&gt;/sites/default/files/css/css_77d1f598b6b8d242bb38e945590a27e6.css
/sites/default/files/js/js_32ddb321767cd603e1552f85fad41dce.js
&lt;/pre&gt;&lt;p&gt;
And these change quite often which reduces their cacheability -- Jim, is something that can be controlled?
&lt;/p&gt;
&lt;p&gt;
I have found that we get more cache hits with &lt;tt&gt;Caching mode: Disabled&lt;/tt&gt; here: &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/performance"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/settings/performance&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
I have also enabled &lt;tt&gt;Page compression: &lt;/tt&gt; -- is this the best place to do it? It seems we have perhaps 3 levels we can produced gzipped content at:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Apache
&lt;/li&gt;&lt;li&gt;PHP
&lt;/li&gt;&lt;li&gt;Drupal
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Any idea which might be best, the dev server is doing it at a Drupal level at the moment and varnish is caching the gziped content.
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 13:47:27 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:41</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:41</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;10.1&lt;/em&gt; to &lt;em&gt;10.2&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Varnish does have a settings page according to this &lt;a class="ext-link" href="http://me.andering.com/2010/12/17/drupal-varnish-and-pressflow-fast-delivery-to-the-customer-with-some-speed-for-users-too/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://me.andering.com/2010/12/17/drupal-varnish-and-pressflow-fast-delivery-to-the-customer-with-some-speed-for-users-too/&lt;/a&gt; it should be here:
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/settings/varnish&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
But I get access denied for it, should I be able to access it?
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/reports/event/1465547"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/reports/event/1465547&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 14:05:34 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:42</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:42</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.3&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;10.2&lt;/em&gt; to &lt;em&gt;10.5&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
with &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/performance"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/settings/performance&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
If we set a &lt;tt&gt;Minimum cache lifetime: 10 min&lt;/tt&gt; and &lt;tt&gt;Caching mode: external&lt;/tt&gt; then varnish does cache content.
&lt;/p&gt;
&lt;p&gt;
I also set this in settings.php, not sure if it's needed, suggested here &lt;a class="ext-link" href="http://drupal.org/node/941788"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/node/941788&lt;/a&gt;
&lt;/p&gt;
&lt;pre class="wiki"&gt;  'reverse_proxy' =&amp;gt; TRUE,
  'reverse_proxy_addresses' =&amp;gt; array('127.0.0.1'),
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Mon, 27 Jun 2011 14:20:48 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:43</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:43</guid>
      <description>
        &lt;p&gt;
I've updated Drupal's perms to allow 'developer' role (of which you're a member) to access Varnish stuff... All here: &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/user/permissions"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/user/permissions&lt;/a&gt; - look under 'Varnish'... Didn't realise it had perms, sorry.
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/settings/varnish&lt;/a&gt; has lots of nice things... And an error that it can't speak to Varnish server.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 17:35:53 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:44</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:44</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;10.5&lt;/em&gt; to &lt;em&gt;10.6&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
an error that it can't speak to Varnish server.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
The port and secret key needed setting, it's working now:
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/reports/varnish"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/reports/varnish&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Mon, 27 Jun 2011 18:57:10 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:45</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:45</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.2&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;10.6&lt;/em&gt; to &lt;em&gt;10.8&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
OK Varnish and Drupal seem to be working OK, TODO:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Tune Varnish
&lt;/li&gt;&lt;li&gt;Search for anything that might have broken from all http cookies being removed
&lt;/li&gt;&lt;li&gt;Try to track down what is setting the NO_CACHE=Y cookie
&lt;/li&gt;&lt;li&gt;Document all the settings
&lt;/li&gt;&lt;li&gt;Possibly look at setting up Mediawiki to work with Varnish (non-urgent) &lt;a class="ext-link" href="http://www.mediawiki.org/wiki/Manual:Varnish_caching"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.mediawiki.org/wiki/Manual:Varnish_caching&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
I should also do some testing of the speed of the live server currently so we can compare it when Varnish is running.
&lt;/p&gt;
&lt;p&gt;
The dev server apache is now very slow compared with Varnish as it's doing no caching, 10 requests for the front page takes around 30 seconds and with Varnish about 0.05 seconds!
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Tue, 28 Jun 2011 08:48:23 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:46</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:46</guid>
      <description>
        &lt;p&gt;
"I should also do some testing of the speed of the live server currently so we can compare it when Varnish is running."
&lt;/p&gt;
&lt;p&gt;
Yes definitely - and the documentation - this is quite a big job and we need to represent the work to all users
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 28 Jun 2011 11:34:09 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:47</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:47</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;10.8&lt;/em&gt; to &lt;em&gt;10.9&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Try to track down what is setting the NO_CACHE=Y cookie
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
I think I have found it, here is this file, &lt;tt&gt;/web/dev.transitionnetwork.org.webarch.net/www/modules/cookie_cache_bypass/cookie_cache_bypass.module&lt;/tt&gt; which contains:
&lt;/p&gt;
&lt;pre class="wiki"&gt;&amp;lt;?php
function cookie_cache_bypass_form_alter(&amp;amp;$form, $form_state, $form_id) {
  $form['#submit'][] = 'cookie_cache_bypass_submit';
}
function cookie_cache_bypass_submit() {
  global $cookie_domain;
  $lifetime = variable_get('cache_lifetime', 300);
  setcookie('NO_CACHE', 'Y', $_SERVER['REQUEST_TIME'] + ($lifetime + 300), '/', $cookie_domain);
}
&lt;/pre&gt;&lt;p&gt;
Jim -- any thoughts on this? Are there any times this is needed?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Tue, 28 Jun 2011 11:39:28 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:48</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:48</guid>
      <description>
        &lt;p&gt;
I mentioned I had enabled it here: &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/276#comment:6" title="defect: HTTPS for all Authenticated Sessions (closed: fixed)"&gt;ticket:276#comment:6&lt;/a&gt; -  it's job is to set a cookie to temporarily tell Varnish et al NOT to return cached content in certain circumstances, like the page after submitting a contact form etc, so the user gets the message rendered into the page.
&lt;/p&gt;
&lt;p&gt;
I reckon it's needed, but that doesn't mean it's behaving as we'd like... Is the cookie always there, or just occasionally? seems like the cookie lasts 5 minutes?
&lt;/p&gt;
&lt;p&gt;
Have you done a find/grep on the /sites/all/modules folder for files containing "setcookie("? Might be nice to know exactly what modules use cookies...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 28 Jun 2011 12:37:56 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:49</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:49</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;10.9&lt;/em&gt; to &lt;em&gt;11.0&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
I mentioned I had enabled it here: &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/276#comment:6" title="defect: HTTPS for all Authenticated Sessions (closed: fixed)"&gt;ticket:276#comment:6&lt;/a&gt; - it's job is to set a cookie to temporarily tell Varnish et al NOT to return cached content in certain circumstances, like the page after submitting a contact form etc, so the user gets the message rendered into the page.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Ah, OK, but I'm not sure it's needed, which forms are not redirected to HTTPS and which shouldn't have their results cached? I'm not sure what problem it's solving?
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Is the cookie always there, or just occasionally? seems like the cookie lasts 5 minutes?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
It is set as soon as you login:
&lt;/p&gt;
&lt;pre class="wiki"&gt;Set-Cookie: NO_CACHE=Y; expires=Tue, 28-Jun-2011 12:33:25 GMT; path=/; domain=.dev.transitionnetwork.org
&lt;/pre&gt;&lt;p&gt;
The live server version will have &lt;tt&gt;domain=.transitionnetwork.org&lt;/tt&gt; and since it doesn't have &lt;tt&gt;secure&lt;/tt&gt; it means it will be sent to all *.transitionnetwork.org sites for all requests, port 80 and 443 for 5 mins.
&lt;/p&gt;
&lt;p&gt;
I wonder if we shouldn't be setting the cookie domain to www.transitionnetwork.org rather than .transitionnetwork.org for the Drupal session cookies -- with the current set up the session cookies could be potentially hi-jacked by another site (well another of our sites, not any site) -- would it cause any bad effects to tighten up on this? We could redirect requests from &lt;a class="ext-link" href="http://transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://transitionnetwork.org/&lt;/a&gt; to &lt;a class="ext-link" href="http://www.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.transitionnetwork.org/&lt;/a&gt; The only problem would be if there were other sub-domains in use that people needed to be authenticated on after login to www.transitionnetwork.org -- is this the case?
&lt;/p&gt;
&lt;p&gt;
You can test the above by logging in at &lt;a class="ext-link" href="https://dev.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/&lt;/a&gt; and then visiting &lt;a class="ext-link" href="https://wiki.dev.transitionnetwork.org/Main_Page"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://wiki.dev.transitionnetwork.org/Main_Page&lt;/a&gt; -- the Mediawiki site is sent the Drupal session cookie.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Tue, 28 Jun 2011 13:20:39 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:50</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:50</guid>
      <description>
        &lt;p&gt;
Your shout on the Cookie Bypass module... It solves a problem we're not hitting as you say because forms are via HTTPS and hence uncached by Varnish. Shall I disable?
&lt;/p&gt;
&lt;p&gt;
As for the cookie domain... It's supposed to be like that, starting with the . because several domains (esp. workspaces.tn.org) need to share the cookie so logins move around between subdomains. This is best Drupal practice so no, we can't tighten it really.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 28 Jun 2011 14:02:28 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:51</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:51</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.2&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;11.0&lt;/em&gt; to &lt;em&gt;11.2&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Your shout on the Cookie Bypass module... It solves a problem we're not hitting as you say because forms are via HTTPS and hence uncached by Varnish. Shall I disable?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
I think we might as well, I don't think it's doing anything we need. If we find forms that have a problem we can look at these specific cases and work out how to solve them, but I'm not yet aware of any.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
As for the cookie domain...  we can't tighten it really.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
OK, no problem, as the secure flag is set all it means is that the secure Piwik and Mediawiki sites will sent the Drupal auth cookie, and they will ignore it unless there is something happening on this sites which shouldn't be happening.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Have you done a find/grep on the /sites/all/modules folder for files containing "setcookie("? Might be nice to know exactly what modules use cookies...
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Yes, here are the results:
&lt;/p&gt;
&lt;pre class="wiki"&gt;cd /web/dev.transitionnetwork.org.webarch.net
grep -r "setcookie(" . | grep -v svn
&lt;/pre&gt;&lt;dl class="wiki"&gt;&lt;dt&gt;modules/cookie_cache_bypass/cookie_cache_bypass.module&lt;/dt&gt;&lt;dd&gt;
setcookie('NO_CACHE', 'Y', $_SERVER['REQUEST_TIME'] + ($lifetime + 300), '/', $cookie_domain);
&lt;/dd&gt;&lt;dt&gt;modules/comment/comment.module&lt;/dt&gt;&lt;dd&gt;
setcookie('comment_info_'. $field, $form_state['values']![$field], time() + 31536000, '/');
&lt;/dd&gt;&lt;dt&gt;includes/session.inc&lt;/dt&gt;&lt;dd&gt;
setcookie(session_name(), ' ', $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure'], $params['httponly']);
&lt;/dd&gt;&lt;dt&gt;includes/session.inc&lt;/dt&gt;&lt;dd&gt;
setcookie(session_name(), ' ', $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/memcache/memcache-session.inc&lt;/dt&gt;&lt;dd&gt;
setcookie(session_name(), ' ', $_SERVER['REQUEST_TIME'] - 42000, '/');
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/memcache/memcache-session.inc&lt;/dt&gt;&lt;dd&gt;
setcookie(session_name(), ' ', $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure'], $params['httponly']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/memcache/memcache-session.inc&lt;/dt&gt;&lt;dd&gt;
setcookie(session_name(), ' ', $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/cacherouter/cacherouter.module&lt;/dt&gt;&lt;dd&gt;
setcookie($cookie_name, TRUE, $_SERVER['REQUEST_TIME'] + (60 * 60 * 24 * 30), $params['path'], $params['domain'], $params['secure'], $params['httponly']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/cacherouter/cacherouter.module&lt;/dt&gt;&lt;dd&gt;
setcookie($cookie_name, TRUE, $_SERVER['REQUEST_TIME'] + (60 * 60 * 24 * 30), $params['path'], $params['domain'], $params['secure']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/cacherouter/cacherouter.module&lt;/dt&gt;&lt;dd&gt;
setcookie($cookie_name, TRUE, $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure'], $params['httponly']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/cacherouter/cacherouter.module&lt;/dt&gt;&lt;dd&gt;
setcookie($cookie_name, TRUE, $_SERVER['REQUEST_TIME'] - 3600, $params['path'], $params['domain'], $params['secure']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/cas/cas_server.module&lt;/dt&gt;&lt;dd&gt;
setcookie(CAS_LOGIN_COOKIE, "", -3600);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/cas/cas_server.module&lt;/dt&gt;&lt;dd&gt;
setcookie(CAS_LOGIN_COOKIE, $_REQUEST['service']);
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/cas/cas.module&lt;/dt&gt;&lt;dd&gt;
setcookie('cas_login_checked', 'true');
&lt;/dd&gt;&lt;dt&gt;sites/all/modules/securepages_prevent_hijack/securepages_prevent_hijack.module&lt;/dt&gt;&lt;dd&gt;
setcookie(SECUREPAGES_SESSID, $tok, $lifetime,
&lt;/dd&gt;&lt;/dl&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Tue, 28 Jun 2011 20:19:46 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:52</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:52</guid>
      <description>
        &lt;p&gt;
OK, just going back through some stuff and catch up...:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Cache Bypass now module
&lt;/li&gt;&lt;li&gt;&lt;tt&gt;If we set a Minimum cache lifetime: 10 min and Caching mode: external then varnish does cache content&lt;/tt&gt; - Good but I'd suggest the "Page cache maximum age" on the performance page could go up to an hour without too much side-effects... Only news, events and blogs will be delayed worst case an hour... Ed's call really but worth upping this to at least 30 mins I reckon.
&lt;/li&gt;&lt;li&gt;&lt;tt&gt;I have also enabled Page compression: -- is this the best place to do it? It seems we have perhaps 3 levels we can produced gzipped content at...&lt;/tt&gt; I &lt;em&gt;believe&lt;/em&gt; the best place is at an Apache level, but in an ideal world Varnish will cache both normal and gzipped versions of the page and serve according to request headers - is that set up?
&lt;/li&gt;&lt;li&gt;&lt;tt&gt;OK, once Varnish has cached a page it's *really* fast!&lt;/tt&gt; - I know, really impressive... Good work. I'd like to see what caching we're losing on Drupal's side since non-cached pages now take a long time to generate... Is Memcache up and running, or is that for another time?
&lt;/li&gt;&lt;li&gt;&lt;tt&gt;One thing I have noticed, the CSS and JS has generated file names, for example: /sites/default/files/css/css_77d1f598b6b8d242bb38e945590a27e6.css /sites/default/files/js/js_32ddb321767cd603e1552f85fad41dce.js -- And these change quite often which reduces their cacheability -- Jim, is something that can be controlled? &lt;/tt&gt; - Not really... I mean there are often a several versions of the collated, compressed CSS and JS files because some pages use more modules that need extra stuff, or because users use more modules and hence code an css. Plus, whenever the caches are cleared these files are recompiled and cached again, which is necessary if edits or theme updates have been done.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
A quick recap of modules that set cookies according to your grep, for future reference:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Drupal core's session handling (obviously)
&lt;/li&gt;&lt;li&gt;Comment (core, required mod)
&lt;/li&gt;&lt;li&gt;Cacherouter (required mod)
&lt;/li&gt;&lt;li&gt;Memcache (required mod, probably)
&lt;/li&gt;&lt;li&gt;CAS (single sign on, hoping removing Secure Pages will fix this and make it required)
&lt;/li&gt;&lt;li&gt;Cookie Cache Bypass (Pressflow, disabled)
&lt;/li&gt;&lt;li&gt;Secure Pages Prevent Hijack (disabled, obsolete)
&lt;/li&gt;&lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 29 Jun 2011 09:51:55 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:53</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:53</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.8&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;11.2&lt;/em&gt; to &lt;em&gt;12.0&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
I'd suggest the "Page cache maximum age" on the performance page could go up to an hour without too much side-effects
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Sounds good to me, I have set "Minimum cache lifetime" and "Page cache maximum age" to one hour &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/performance"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/settings/performance&lt;/a&gt; I also set this on the live server by mistake -- was the live server set to one hour already or does it need changing to something less?
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Page compression... believe the best place is at an Apache level
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
OK, we did have these rules for one of the back-end caching modules (boost?):
&lt;/p&gt;
&lt;pre class="wiki"&gt;  &amp;lt;FilesMatch "(\.html|\.html\.gz|\.xml|\.xml\.gz)$"&amp;gt;
    &amp;lt;IfModule mod_headers.c&amp;gt;
      Header set Expires "Sun, 19 Nov 1978 05:00:00 GMT"
      Header set Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0"
    &amp;lt;/IfModule&amp;gt;
  &amp;lt;/FilesMatch&amp;gt;
  &amp;lt;FilesMatch "(\.html|\.html\.gz)$"&amp;gt;
    ForceType text/html
  &amp;lt;/FilesMatch&amp;gt;
  &amp;lt;FilesMatch "(\.xml|\.xml\.gz)$"&amp;gt;
    ForceType text/xml
  &amp;lt;/FilesMatch&amp;gt;
  &amp;lt;FilesMatch "(\.js|\.js\.gz)$"&amp;gt;
    ForceType text/javascript
  &amp;lt;/FilesMatch&amp;gt;
  &amp;lt;FilesMatch "(\.css|\.css\.gz)$"&amp;gt;
    ForceType text/css
  &amp;lt;/FilesMatch&amp;gt;
&lt;/pre&gt;&lt;p&gt;
I have commented the above out and added some extra mime types to the &lt;tt&gt;/etc/apache2//mods-available/deflate.conf&lt;/tt&gt;:
&lt;/p&gt;
&lt;pre class="wiki"&gt;&amp;lt;IfModule mod_deflate.c&amp;gt;
          AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/rss+xml
&amp;lt;/IfModule&amp;gt;
&lt;/pre&gt;&lt;p&gt;
Any other mime types need adding?
&lt;/p&gt;
&lt;p&gt;
Jim -- what about all the boost rewrite rules, should these now be commented out?
&lt;/p&gt;
&lt;p&gt;
I'm also not sure about this ETag setting:
&lt;/p&gt;
&lt;pre class="wiki"&gt;FileETag MTime Size
&lt;/pre&gt;&lt;p&gt;
And also there is this expires date, 1984:
&lt;/p&gt;
&lt;pre class="wiki"&gt;Last-Modified: Wed, 29 Jun 2011 09:32:37 +0000
Expires: Sun, 11 Mar 1984 12:00:00 GMT
&lt;/pre&gt;&lt;p&gt;
Set via &lt;tt&gt;includes/bootstrap.inc&lt;/tt&gt;:
&lt;/p&gt;
&lt;pre class="wiki"&gt;  // HTTP/1.0 proxies do not support the Vary header, so prevent any caching
  // by sending an Expires date in the past. HTTP/1.1 clients ignores the
  // Expires header if a Cache-Control: max-age= directive is specified (see RFC
  // 2616, section 14.9.3).
  drupal_set_header('Expires', 'Sun, 11 Mar 1984 12:00:00 GMT');
&lt;/pre&gt;&lt;p&gt;
It looks to me that we might need to take a close look at all the HTTTP header settings in that file -- Jim did these settings also come with boost?
&lt;/p&gt;
&lt;p&gt;
And according to &lt;a class="ext-link" href="http://redbot.org/?uri=http%3A%2F%2Fdev.transitionnetwork.org%2Fnews%2Ffeed#"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;redbot&lt;/a&gt; we have an invalid Last-Modified date, so I'll look into that at some point.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Is Memcache up and running, or is that for another time?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
I have installed &lt;tt&gt;memcached php5-memcache&lt;/tt&gt; on the dev server, the config file is &lt;tt&gt;/etc/php5/conf.d/memcache.ini&lt;/tt&gt; and it's now running -- where do we configure it for Drupal does the module need enabling?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Wed, 29 Jun 2011 10:51:04 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:54</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:54</guid>
      <description>
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Jim -- what about all the boost rewrite rules, should these now be commented out?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Yes, kill 'em - boost hasn't been there for over a year!
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Set via includes/bootstrap.inc... Jim did these settings also come with boost?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Can't hack Drupal core! Hopefully that's not acutally sent anywhere, or it might be a catch-all for non-cachable items... Hopefully Pressflow + Varnish overrides these.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
I have installed memcached php5-memcache on the dev server -- where do we configure it for Drupal does the module need enabling?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
I've just enabled the Memcache module, plus it's admin interface -- then had to patch it -- and updated the permissions, so you can access its stats here: &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/reports/memcache"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/reports/memcache&lt;/a&gt; and the pitiful admin screen here: &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/memcache"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/settings/memcache&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Looks like there's more installation needed though, from /sites/all/modules/memcache/README.TXT':
&lt;/p&gt;
&lt;pre class="wiki"&gt;These are the broad steps you need to take in order to use this software. Order
is important.
1. Install the memcached binaries on your server. See
http://www.lullabot.com/articles/how_install_memcache_debian_etch
2. Install the PECL memcache extension for PHP. This must be version 2.2.1 or
   higher or you will experience errors.
3. Put your site into offline mode.
4. Download and install the memcache module.
5. If you have previously been running the memcache module, run update.php.
6. Start at least one instance of memcached on your server.
7. Edit settings.php to configure the servers, clusters and bins that memcache
   is supposed to use.
8. Edit settings.php to include either memcache.inc. For
   example, $conf['cache_inc'] ='sites/all/modules/memcache/memcache.inc';
9. Bring your site back online.
For instructions on 1 and 2 above, please see the INSTALLATION.txt file that
comes with the memcache module download.
The memcache.inc file is intended to be used instead of cache.inc, utilizing
Drupal's pluggable cache system.
memcache.db.inc IS DEPRECATED AND IS NOT RECOMMENDED. It is still distributed
with the 6.x-1.x branch, but will not be included in any further versions and
may be removed in future 6.x releases.
Update $conf in settings.php to tell Drupal where the cache_inc file is:
 $conf = array(
   // The path to wherever memcache.inc is. The easiest is to simply point it
   // to the copy in your module's directory.
   'cache_inc' =&amp;gt; './sites/all/modules/memcache/memcache.inc',
 );
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 29 Jun 2011 11:57:57 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:55</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:55</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.1&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;12.0&lt;/em&gt; to &lt;em&gt;12.1&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
boost hasn't been there for over a year!
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Yikes, what is the minimal set of mod_rewrite rules we need -- it might be easier to start again are some pressflow suggest one or a pressflow .htaccess file I can look at?
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
includes/bootstrap.inc ... Can't hack Drupal core! Hopefully Pressflow + Varnish overrides these.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
It's not overwriting them at the moment, I'll do some more investigation...
&lt;/p&gt;
&lt;p&gt;
And I'll look some more at memcache...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Wed, 29 Jun 2011 12:01:22 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:56</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:56</guid>
      <description>
        &lt;p&gt;
The .htaccess file in the root of the site should be the basic version from Pressflow - and it should be the same as this:
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="https://github.com/pressflow/6/blob/master/.htaccess"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://github.com/pressflow/6/blob/master/.htaccess&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 29 Jun 2011 13:09:54 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:57</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:57</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.0&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;12.1&lt;/em&gt; to &lt;em&gt;13.1&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
We have had memcache running on the live server before: &lt;a class="wiki" href="http://localhost:8080/trac/wiki/NewLiveServer#memcache"&gt;wiki:NewLiveServer#memcache&lt;/a&gt; not sure why it wasn't on the dev server, it is now: wiki/DevelopmentServer#memcache and we have some stats here: &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/reports/memcache"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transitionnetwork.org/admin/reports/memcache&lt;/a&gt;
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
The .htaccess file in the root of the site should be the basic version from Pressflow - and it should be the same as this:
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="https://github.com/pressflow/6/blob/master/.htaccess"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://github.com/pressflow/6/blob/master/.htaccess&lt;/a&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Great, I have applied those and commented out all the older ones, it's a lot simpler now :-)
&lt;/p&gt;
&lt;p&gt;
I have also reduced the number of apache processes to reduce apache memory usage as the server is getting slow as it's swapping a lot, (see &lt;a class="ext-link" href="https://kiwi.transitionnetwork.org/munin/webarch.net/kiwi.webarch.net.html"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://kiwi.transitionnetwork.org/munin/webarch.net/kiwi.webarch.net.html&lt;/a&gt;), from &lt;tt&gt;/etc/apache2/apache2.conf&lt;/tt&gt;:
&lt;/p&gt;
&lt;pre class="wiki"&gt;&amp;lt;IfModule mpm_prefork_module&amp;gt;
    StartServers          2
    MinSpareServers       2
    MaxSpareServers       4
    MaxClients           10
    MaxRequestsPerChild   2000
&amp;lt;/IfModule&amp;gt;
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 30 Jun 2011 09:27:46 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:58</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:58</guid>
      <description>
        &lt;p&gt;
It's worth noting that the file caching engine of Cache Router is most likely the cause of &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/286" title="defect: Data loss on save, Cache Router issue? (closed: fixed)"&gt;#286&lt;/a&gt; (Data loss) issues.
&lt;/p&gt;
&lt;p&gt;
Therefore pressing on with Varnish on LIVE is certainly beneficial now CR has been disabled.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Fri, 01 Jul 2011 12:00:32 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:59</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:59</guid>
      <description>
        &lt;p&gt;
May be of interest, Chris - purging items in Varnish from Drupal when the content is updated, hence allowing longer caching times:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://drupal.org/project/purge"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/purge&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class="ext-link" href="http://drupal.org/node/1054886"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/node/1054886&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Fri, 01 Jul 2011 14:35:14 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:60</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:60</guid>
      <description>
        &lt;p&gt;
Chris doing research and tweaking settings
Ed and Jim to torture DEV and try all functionality
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 05 Jul 2011 11:04:07 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:61</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:61</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.26&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;13.1&lt;/em&gt; to &lt;em&gt;13.36&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
&lt;a class="ext-link" href="http://drupal.org/project/purge"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/purge&lt;/a&gt;
&lt;a class="ext-link" href="http://drupal.org/node/1054886"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/node/1054886&lt;/a&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Thanks I have copied over the key things from there, some options are not needed as we currently have Varnish to remove all incoming and outgoing cookies.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 05 Jul 2011 13:24:07 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:62</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:62</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.5&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;13.36&lt;/em&gt; to &lt;em&gt;14.86&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
I have done some page load time tests, see &lt;a class="ext-link" href="https://tech.transitionnetwork.org/trac/wiki/LoadTimes"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://tech.transitionnetwork.org/trac/wiki/LoadTimes&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
As expected the dev server is very fast for port 80 and very slow for 443, there is a summary of some other key points on the wiki page and also detail about what I did and we now have some numbers to compare with later on.
&lt;/p&gt;
&lt;p&gt;
I'll look at fixing the gzip and etag issues for js on the dev server now.
&lt;/p&gt;
&lt;p&gt;
Not sure what to look at next for speeding up HTTPS requests, Jim -- any suggestions?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 06 Jul 2011 11:19:24 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:63</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:63</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.56&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;14.86&lt;/em&gt; to &lt;em&gt;16.42&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Not sure what to look at next for speeding up HTTPS requests
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
One &lt;a class="ext-link" href="http://blog.merge.nl/2010/11/18/pressflow-varnish-advanced-drupal-hosting"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;suggestion&lt;/a&gt; is to use &lt;a class="ext-link" href="http://drupal.org/project/esi"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;Edge Side Includes&lt;/a&gt;, and this is possibly worth looking at but the problem is that varnish doesn't do HTTPS...
&lt;/p&gt;
&lt;p&gt;
Another &lt;a class="ext-link" href="http://singlemindconsulting.com/blog/christoler/2010/8/setting-pressflow-and-varnish-work-http-and-https"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;suggestion&lt;/a&gt; is to use a HTTPS accelerator like pound, so we could then have:
&lt;/p&gt;
&lt;pre class="wiki"&gt;pound -&amp;gt; varnish -&amp;gt; apache
&lt;/pre&gt;&lt;p&gt;
It is possible to set up pound to cope with multiple HTTPS sites with one cert and one IP, see &lt;a class="ext-link" href="http://www.apsis.ch/pound/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.apsis.ch/pound/&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
I could set this up on the dev server and test it, it'll also require changes to the Varnish set up.
&lt;/p&gt;
&lt;p&gt;
If it all works the end result should be that css/js/images are all served by varnish for HTTPS requests and all requests for web pages would get passed though, we also also consider using ESI module for additional performance.
&lt;/p&gt;
&lt;p&gt;
Or another option would be to use &lt;a class="ext-link" href="http://nginx.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;Nginx for HTTPS&lt;/a&gt;, though this would also have some complications, for example with &lt;a class="ext-link" href="http://drupal.org/project/filefield_nginx_progress"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;upload progress module&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
And one thing we could also look at is using &lt;a class="ext-link" href="http://2bits.com/articles/apache-fcgid-acceptable-performance-and-better-resource-utilization.html"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;fcgid rather than mod_php&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
I'll continue doing some research...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 06 Jul 2011 13:15:48 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:64</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:64</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.5&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;16.42&lt;/em&gt; to &lt;em&gt;17.92&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
I'm still unsure if we should try pound or nginx for HTTPS, will read more...
&lt;/p&gt;
&lt;h2 id="nginx"&gt;nginx&lt;/h2&gt;
&lt;p&gt;
On the dev server at least we can't just use nginx rather than apache as it would break subversion:
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
The Nginx WebDAV module supports only a limited set of the protocol so in this case you need to reverse proxy to Apache and let it handle it.
&lt;a class="ext-link" href="http://blog.martinfjordvald.com/2011/02/nginx-primer-2-from-apache-to-nginx/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://blog.martinfjordvald.com/2011/02/nginx-primer-2-from-apache-to-nginx/&lt;/a&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
More info on this here:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://kbeezie.com/view/apache-with-nginx/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;Apache and Nginx Together&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;h2 id="fcgid"&gt;fcgid&lt;/h2&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
If pure speed is what you are after, then stay with mod_php.
&lt;/p&gt;
&lt;p&gt;
However, for better resource usage and efficiency, consider moving to fcgid.
&lt;/p&gt;
&lt;p&gt;
&lt;a class="ext-link" href="http://2bits.com/articles/apache-fcgid-acceptable-performance-and-better-resource-utilization.html"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://2bits.com/articles/apache-fcgid-acceptable-performance-and-better-resource-utilization.html&lt;/a&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
We do have an issue with memory usage, so fcgid is probably worth considering.
&lt;/p&gt;
&lt;h2 id="YSlowIssues"&gt;YSlow Issues&lt;/h2&gt;
&lt;p&gt;
I have fixed the gzipping of js files and the etags issue -- now the dev server has A's on YSlow for everything we can have A's for.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 07 Jul 2011 11:16:43 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:65</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:65</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.39&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;17.92&lt;/em&gt; to &lt;em&gt;18.31&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Regarding the pound/varnish vs nginx for https, it appears that nginx might be faster, but then we would can drupal/apache talkig to two reverse proxies -- is this possible / would it make things far too complicated?
&lt;/p&gt;
&lt;pre class="wiki"&gt;https req --  nginx  \
                        apache
http req  -- varnish /
&lt;/pre&gt;&lt;p&gt;
I'm thinking that using pound might be simpler as then there is only one reverse proxy to configure.
&lt;/p&gt;
&lt;pre class="wiki"&gt;https req --  pound  \
                        varnish -- apache
http req  -----------/
&lt;/pre&gt;&lt;p&gt;
With this set up the existing varnish config will need a rewriting and will be more complicated as it'll be doing authenticated and non-authenticated requests, also it'll be doing reverse proxy for the other sites on the server, mediawiki etc.
&lt;/p&gt;
&lt;p&gt;
And for the dev server there is the added complication that we have subversion on port 443.
&lt;/p&gt;
&lt;p&gt;
So, I'm tempted to have a play with pound and see if this is going to work -- does that sound OK?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 07 Jul 2011 12:32:30 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:66</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:66</guid>
      <description>
        &lt;p&gt;
Sorry Chris, been meaning to help out on this ticket but other stuff keeps cropping up.
&lt;/p&gt;
&lt;p&gt;
My gut says: keep it simple.
&lt;/p&gt;
&lt;p&gt;
Varnish is quick, Drupal behind it is slow. This tells me that the Drupal-level caching is borked, and that this is a Drupal issue.
&lt;/p&gt;
&lt;p&gt;
Sure, adding another layer of server-level stuff or an alternate server might improve things, but really it's down to Drupal not having the speed we need when creating pages for logged in users.
&lt;/p&gt;
&lt;p&gt;
I would be interested to see what LIVE makes of the existing DEV configuration - after all, there's double as much memory and 4x as many processors.
&lt;/p&gt;
&lt;p&gt;
Would it be possible to try Varnish out on LIVE and then disable it after a few hours? I know Ed and I haven't tested DEV, nor have I had chance to look into the Drupal-level speed issues I allude to above - but if we can turn it on/off easily enough (without the Conference exploding as a result), then we should test it out.
&lt;/p&gt;
&lt;p&gt;
You see logged in user's pages are always slow compared, because they must be generated for each person's settings. However, if memcache is there aiding these requests then I cannot see why we shouldn't have the same speed or better than with the (broken) Cache Router file cache. If not, I'd say something is misconfiguration, probably at a Drupal/memcache level.
&lt;/p&gt;
&lt;p&gt;
I'll hopefully have more time next week to help on this ticket, and will do testing on DEV ASAP.
&lt;/p&gt;
&lt;p&gt;
What do you reckon?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 07 Jul 2011 13:58:38 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:67</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:67</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.2&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;18.31&lt;/em&gt; to &lt;em&gt;18.51&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Would it be possible to try Varnish out on LIVE and then disable it after a few hours?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
There are several ways we could do this, but I'm not sure about deploying exactly the set up we have on on the dev server on the live -- it's *so* slow for logged in users... I'll have a think about this, I guess we could try it...
&lt;/p&gt;
&lt;p&gt;
I'll start by setting up Varnish running on another port like 81.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
logged in user's pages are always slow compared, because they must be generated for each person's settings.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Right, this is where ESI is worth considering at some point &lt;a class="ext-link" href="http://drupal.org/project/esi"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://drupal.org/project/esi&lt;/a&gt; -- the dynamic bits of the pages, eg the bit with the username in it, are dynamically generated and inserted into the rest of the page which is the same for all users.
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
if memcache is there aiding these requests
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
I think we need to test this, it's using hardly any memory, I'm not convinced it is doing anything much at the moment, it's using 27Mb of RAM on the dev server:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="https://kiwi.transitionnetwork.org/munin/webarch.net/kiwi.webarch.net-multimemory.html"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://kiwi.transitionnetwork.org/munin/webarch.net/kiwi.webarch.net-multimemory.html&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
And 1.4Mb RAM on the live server:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="https://kiwi.transitionnetwork.org/munin/webarch.net/quince.webarch.net-multimemory.html"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://kiwi.transitionnetwork.org/munin/webarch.net/quince.webarch.net-multimemory.html&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Thu, 07 Jul 2011 14:05:35 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:68</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:68</guid>
      <description>
        &lt;p&gt;
NO tinkering with this sort of stuff during the conference please.
&lt;/p&gt;
&lt;p&gt;
Chris and Ed will be dashing around like blue arsed flies, so not able to concentrate on this work, and there may be multiple bloggers, etc. etc.
&lt;/p&gt;
&lt;p&gt;
Happy to trial on Tuesday when we're together, calm, in front of computers with skype etc...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 07 Jul 2011 18:02:46 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:69</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:69</guid>
      <description>
        &lt;p&gt;
Interesting...
&lt;/p&gt;
&lt;p&gt;
I've just put RC1 of Cache Router onto DEV - is it me or is it faster? Or is that your work, Chris?
&lt;/p&gt;
&lt;p&gt;
Bear in mind we're using memcache/varnish not file cache... Is it really faster? Seems so - pages are on average about 1 sec, and once caches are primed it's faster still.
&lt;/p&gt;
&lt;p&gt;
Chris?!
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 07 Jul 2011 18:20:37 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:70</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:70</guid>
      <description>
        &lt;p&gt;
OK. It's plain fast now. Well, fast enough anyway.
&lt;/p&gt;
&lt;p&gt;
Could Cache Router RC2 have been the problem here all along, or am I merely seeing a mirage of a fast website reflected off hot air rising from my new cup of tea??
&lt;/p&gt;
&lt;p&gt;
In short: logged in users run at a very usable pace. Un-logged-in users get a delay for the first request (Varnish coming out of page files or warming up?), then it's like a greased cougar on speed with a red-hot poker in its ass.
&lt;/p&gt;
&lt;p&gt;
My hunch: Cache Router RC2 is buggered.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 07 Jul 2011 20:40:13 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:71</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:71</guid>
      <description>
        &lt;p&gt;
So I pushed RC1 to LIVE but we still have the 'have to delete the cache files manually because certain pages get obsolete data' bug is still present.
&lt;/p&gt;
&lt;p&gt;
So though DEV seems better, and LIVE seems ok (as before) one major bug is still here.
&lt;/p&gt;
&lt;p&gt;
I'll check for patches, or possibly pull the older version of CR out of SVN because I *think* I patched it at some point... will look back though the commits, though it could have been on the old repo.
&lt;/p&gt;
&lt;p&gt;
Note normally I would never roll back a module like this, but CR doesn't have its own settings/database schema - code only - so it's safe to do so.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 07 Jul 2011 23:22:09 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:72</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:72</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;1.0&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;18.51&lt;/em&gt; to &lt;em&gt;19.51&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
It took a while to work out what was going on here!
&lt;/p&gt;
&lt;p&gt;
What I think has happened is that the &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/session443"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;Session 443&lt;/a&gt; module has changed to an older version which doesn't have the option to disable this feature:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Force all authenticated users to use HTTPS. Also force non-authenticated users on a login or registration form to use HTTPS. Otherwise force HTTP.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
So we were testing &lt;a class="ext-link" href="https://dev.transtionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://dev.transtionnetwork.org/&lt;/a&gt; but getting the results from http and therefore varnish.
&lt;/p&gt;
&lt;p&gt;
So I have disabled Session 443 on the dev site and now it's back to being really slow...
&lt;/p&gt;
&lt;p&gt;
I put some speed test results up here &lt;a class="wiki" href="http://localhost:8080/trac/wiki/LoadTimes"&gt;wiki:LoadTimes&lt;/a&gt; but they aren't very interesting.
&lt;/p&gt;
&lt;p&gt;
I think the next thing to do is experiment with pound doing https in front of Apache.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Fri, 08 Jul 2011 07:01:58 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:73</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:73</guid>
      <description>
        &lt;p&gt;
Hmmm. My bad, saw the update and downloaded the wrong one *sigh* The latest, Beta 2 is up, settings re-applied - you may want to check.
&lt;/p&gt;
&lt;p&gt;
Site still seems pretty quick once the caches (memcache) is primed.
&lt;/p&gt;
&lt;p&gt;
Getting a 'line through padlock' warning in Chromium that some elements are non-https. These need tracking down.
&lt;/p&gt;
&lt;p&gt;
So, Chris, is it working? If so, the site is as fast as it's ever been on DEV.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Fri, 08 Jul 2011 11:50:21 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:74</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:74</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.3&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;19.51&lt;/em&gt; to &lt;em&gt;19.81&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
The latest, Beta 2 is up, settings re-applied - you may want to check.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Ah, nice, it's been improved a lot, looks fine now :-)
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Site still seems pretty quick once the caches (memcache) is primed.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Yeah it doesn't seem too bad :-)
&lt;/p&gt;
&lt;p&gt;
Also the live server will be faster...
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Getting a 'line through padlock' warning in Chromium that some elements are non-https. These need tracking down.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
I have loked at the HTML of the front page and there is no media embedded with http, also none of the CSS files link to any images via http, and the js is loaded via https so I'm at a loss to explain this, unless some js files dynamically generate links to http things and this is the cause?
&lt;/p&gt;
&lt;p&gt;
Also I just installed chromium-browser and I didn't get a line through the padlock, so I'm extra confused about why you do!
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Fri, 08 Jul 2011 11:53:33 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:75</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:75</guid>
      <description>
        &lt;p&gt;
I thinks the padlock status is cached... Once I closed/opened a tab the padlock went green.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;SO&lt;/strong&gt; I reckon varnish + memcache + session443 is ok, at least as fast as before - DEV was never the speediest.
&lt;/p&gt;
&lt;p&gt;
So that means we're almost ready to do this on LIVE - once the conference is done. Before we make the switch I'll try once more with RC2 of cacherouter because it does fix a number of bugs.
&lt;/p&gt;
&lt;p&gt;
Will put it in SVN and on DEV shortly and see if anything changes...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Fri, 08 Jul 2011 12:15:46 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:76</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:76</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.05&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;19.81&lt;/em&gt; to &lt;em&gt;19.86&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
OK, I'm happy with that, if we find it's too slow then at that point we can revisit the pound / nginx options, I'd also be happy if we didn't need to because they would introduce a lot more complexity.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Tue, 12 Jul 2011 14:20:44 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:77</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:77</guid>
      <description>
        &lt;p&gt;
Right then fellas - are we ready to try this on Wednesday?
&lt;/p&gt;
&lt;p&gt;
Shall we organise a skype mid-wednesday to discuss it while we're doing it? Taht sounds like sense to me.
&lt;/p&gt;
&lt;p&gt;
I don't want to go on hols wondering if the logged in experience is good enough...!
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Tue, 12 Jul 2011 14:23:02 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:78</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:78</guid>
      <description>
        &lt;p&gt;
I'm going to put my neck on the block and say: logged in will be fine.
&lt;/p&gt;
&lt;p&gt;
DEV is slow because it gets no traffic, therefore the caches are always cold and need re-filling.
&lt;/p&gt;
&lt;p&gt;
Can chat any time mid-wed, let me know when.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Tue, 12 Jul 2011 20:30:37 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:79</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:79</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.04&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;19.86&lt;/em&gt; to &lt;em&gt;19.9&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
Can chat any time mid-wed, let me know when.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
OK, I'll get everything in place in the morning and then we could do the switch perhaps around noon, via skype -- I have a school sports day to go to from about 1:45pm onwards.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Tue, 12 Jul 2011 21:08:23 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:80</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:80</guid>
      <description>
        &lt;p&gt;
ok then, standing by for further information - and be prepared to roll it back if it does'nt work out, too!
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 13 Jul 2011 13:09:10 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:81</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:81</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;3.0&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;19.9&lt;/em&gt; to &lt;em&gt;22.9&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
Varnish is now live but for some reason HTML pages are not being cached, everything else seems fine so far....
&lt;/p&gt;
&lt;p&gt;
There should be a HIT in the HTTP headers not a MISS:
&lt;/p&gt;
&lt;pre class="wiki"&gt;X-Varnish-Cache: MISS
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Wed, 13 Jul 2011 18:41:31 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:82</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:82</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.3&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;22.9&lt;/em&gt; to &lt;em&gt;23.2&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
The varnish settings for the dev server and the live server are exactly the same. However the dev server is serving pages via varnish:
&lt;/p&gt;
&lt;pre class="wiki"&gt;lynx -head -dump http://dev.transitionnetwork.org/
HTTP/1.1 200 OK
Server: Apache
Cache-Control: public, max-age=3600
Last-Modified: Wed, 13 Jul 2011 18:10:42 +0000
Expires: Sun, 11 Mar 1984 12:00:00 GMT
Vary: Cookie,Accept-Encoding
ETag: "1310580642"
Content-Type: text/html; charset=utf-8
Content-Length: 30814
Date: Wed, 13 Jul 2011 18:25:15 GMT
X-Varnish: 1553515735 1553515688
Age: 872
Via: 1.1 varnish
Connection: close
X-Varnish-Cache: HIT
&lt;/pre&gt;&lt;p&gt;
And the live server is not:
&lt;/p&gt;
&lt;pre class="wiki"&gt;lynx -head -dump http://www.transitionnetwork.org/
HTTP/1.1 200 OK
Server: Apache
X-Drupal-Cache: HIT
Etag: "1310580100-0"
Cache-Control: public, max-age=0
Last-Modified: Wed, 13 Jul 2011 18:01:40 +0000
Expires: Sun, 11 Mar 1984 12:00:00 GMT
Vary: Cookie,Accept-Encoding
Content-Type: text/html; charset=utf-8
Content-Length: 30681
Date: Wed, 13 Jul 2011 18:25:46 GMT
X-Varnish: 201272008
Age: 0
Via: 1.1 varnish
Connection: close
X-Varnish-Cache: MISS
&lt;/pre&gt;&lt;p&gt;
Note the &lt;strong&gt;X-Varnish-Cache: HIT&lt;/strong&gt; header from the dev server and the &lt;strong&gt;X-Drupal-Cache: HIT&lt;/strong&gt; from the live server.
&lt;/p&gt;
&lt;p&gt;
I suspect this is because the &lt;a class="ext-link" href="https://dev.transitionnetwork.org/admin/settings/performance"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;dev server&lt;/a&gt; has:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
Caching mode:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
External (experts only, possible side effects)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
And the &lt;a class="ext-link" href="https://www.transitionnetwork.org/admin/settings/performance"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;live server&lt;/a&gt; has:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
Caching mode:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
Normal (recommended for production sites, no side effects)
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Ideally we would be able to have Caching mode on Normal for authenticated requests and on External for non-authenticated requests, however I don't think this is an option.
&lt;/p&gt;
&lt;p&gt;
So I suggest when we are all together we try switching the live server to External and see how it does.
&lt;/p&gt;
&lt;p&gt;
I'm noting some load times here &lt;a class="ext-link" href="https://tech.transitionnetwork.org/trac/wiki/LoadTimes#a2011-07-13"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://tech.transitionnetwork.org/trac/wiki/LoadTimes#a2011-07-13&lt;/a&gt;
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 14 Jul 2011 09:46:47 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:83</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:83</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.34&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;23.2&lt;/em&gt; to &lt;em&gt;23.54&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;p&gt;
I have just written the following to explain the speed improvement:
&lt;/p&gt;
&lt;blockquote class="citation"&gt;
&lt;p&gt;
Yesterday the configuration of the site was changed in a couple of key
ways.
Varnish, a HTTP caching reverse proxy server, was set up to serve
requests on port 80, in other words all
&lt;a class="ext-link" href="http://www.transitionnetwork.org/"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://www.transitionnetwork.org/&lt;/a&gt; requests.
This has resulted in a dramatic improvement in speeds for people who are
not logged in to the site.
For example the speed test application at tools.pingdom.com would
previously fail to load the front page and all the associated images,
etc in 30 seconds (the maximum time it'll run for) -- it typically
managed to fully download about half the files in this time.
For example see the result from just before Varnish was deployed:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://tools.pingdom.com/default.asp?url=http%3a%2f%2fwww.transitionnetwork.org%2f&amp;amp;id=5124069"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://tools.pingdom.com/default.asp?url=http%3a%2f%2fwww.transitionnetwork.org%2f&amp;amp;id=5124069&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
And compare that the a typical result after Varnish was deployed:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a class="ext-link" href="http://tools.pingdom.com/default.asp?url=http%3a%2f%2fwww.transitionnetwork.org%2f&amp;amp;id=5127828"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;http://tools.pingdom.com/default.asp?url=http%3a%2f%2fwww.transitionnetwork.org%2f&amp;amp;id=5127828&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
After Varnish was deployed the front page and all it's associated files
now typically loads in about 1.5 seconds!
The other key change that has been made to the site is that now
authenticated sessions are only available via https -- while you are
logged into the site your connection is encrypted.
This makes the site a lot more secure, especially for people using
unencrypted wifi access points, though it might take a little bit of
getting used to for some users (if a logged in user visits the http
version of a page they will appear to have been logged out).
&lt;/p&gt;
&lt;/blockquote&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Thu, 14 Jul 2011 11:52:32 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:84</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:84</guid>
      <description>
        &lt;p&gt;
couple of things:
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;the /news and /blogs views lead users to a http link. if they are logged in, they get access denied. can we upgrade the views for them to show their https status, or perhaps we need to tinker with the access denied page, hmm?
&lt;/li&gt;&lt;/ol&gt;&lt;ol start="2"&gt;&lt;li&gt;the email alerts show the http link - see problem &lt;a class="closed ticket" href="http://localhost:8080/trac/ticket/1" title="task: Trac install (closed: fixed)"&gt;#1&lt;/a&gt; - hmm - maybe i'm answering my own question here.
&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;
THEREFORE: let's edit the 403 page - what exact instructions should we give to punters seeing the access denied message because of this loop?
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 14 Jul 2011 12:07:31 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:85</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:85</guid>
      <description>
        &lt;blockquote class="citation"&gt;
&lt;ol&gt;&lt;li&gt;the /news and /blogs views lead users to a http link. if they are logged in, they get access denied. can we upgrade the views for them to show their https status, or perhaps we need to tinker with the access denied page, hmm?
&lt;/li&gt;&lt;/ol&gt;&lt;/blockquote&gt;
&lt;p&gt;
Still not seeing this - please post links/instructions.
&lt;/p&gt;
&lt;ol start="2"&gt;&lt;li&gt;This could *POSSIBLY* be resolved by ensuring all /user* links are pushed to SSL - Chris? Do you have an example message email to post, Ed?
&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;
Good idea about the 403 error page Ed. Though I think we can also improve things by changing the header toolbar links to go to /user rather than /user/login, that way people will see their page if they're logged in, rather than the access denied error. I'll do that now...
&lt;/p&gt;
&lt;p&gt;
In the mean time, there are two paths:
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;strong&gt;User logged in but arrives at /user/login etc&lt;/strong&gt; - in this case we just either say "You're already logged in, please use secure version", OR we just execute a drupal_goto("&lt;a class="ext-link" href="https://www.transitionnetwork.org/user"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://www.transitionnetwork.org/user&lt;/a&gt;") to get them to avoid the error all together
&lt;/li&gt;&lt;li&gt;&lt;strong&gt;User NOT logged in but wants a auth-only page&lt;/strong&gt; - show them the error message and page they get now but ensure the links from to secure pages are HTTPS.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
(settings at: &lt;a class="ext-link" href="https://www.transitionnetwork.org/admin/settings/customerror"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://www.transitionnetwork.org/admin/settings/customerror&lt;/a&gt;)
&lt;/p&gt;
&lt;p&gt;
Again, I'll try some of these now and post more soon.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 14 Jul 2011 12:28:39 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:86</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:86</guid>
      <description>
        &lt;p&gt;
OK, have changed 'Log in' to "My Account &amp;amp; Log In" which points to /user (thus giving either the user's home if they're logged in, or the login form)
&lt;/p&gt;
&lt;p&gt;
And the 403 page has a special case for logged people accessing /user/login or /user/register that looks like:
&lt;/p&gt;
&lt;pre class="wiki"&gt;You're already logged in, Transition Admin!
For better security, we now require people to use HTTPS to access their accounts and perform logged-in actions.
Please continue securely to your account to continue. Thank you.
&lt;/pre&gt;&lt;p&gt;
See it (when logged in) here: &lt;a class="ext-link" href="https://www.transitionnetwork.org/user/login"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://www.transitionnetwork.org/user/login&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Non-logged in users get the usual login form instead.
&lt;/p&gt;
&lt;p&gt;
Does this fix the issues, Ed? (Still can't see the http(s) issue with news or blogs.
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Thu, 14 Jul 2011 15:51:19 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:87</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:87</guid>
      <description>
        &lt;p&gt;
nice one. another question leads from this -
&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;can it take them back to the page they were wanting to get to (as it used to when people logged in)?
&lt;/li&gt;&lt;/ol&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>chris</dc:creator>

      <pubDate>Thu, 14 Jul 2011 16:29:28 GMT</pubDate>
      <title>hours, totalhours changed</title>
      <link>http://localhost:8080/trac/ticket/224#comment:88</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:88</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;hours&lt;/strong&gt;
                changed from &lt;em&gt;0.0&lt;/em&gt; to &lt;em&gt;0.05&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;totalhours&lt;/strong&gt;
                changed from &lt;em&gt;23.54&lt;/em&gt; to &lt;em&gt;23.59&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
        &lt;blockquote class="citation"&gt;
&lt;p&gt;
This could *POSSIBLY* be resolved by ensuring all /user* links are pushed to SSL - Chris?
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
We have that already:
&lt;/p&gt;
&lt;pre class="wiki"&gt;RedirectPermanent /user https://www.transitionnetwork.org/user
&lt;/pre&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>jim</dc:creator>

      <pubDate>Thu, 14 Jul 2011 17:27:11 GMT</pubDate>
      <title></title>
      <link>http://localhost:8080/trac/ticket/224#comment:89</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:89</guid>
      <description>
        &lt;p&gt;
I've added some code to handle users logged in looking for a HTTPS logged-in page from HTTP (e.g. clicking 'add comment'): &lt;a class="ext-link" href="https://www.transitionnetwork.org/user/login?destination=node%2F17514%23comment-form"&gt;&lt;span class="icon"&gt;​&lt;/span&gt;https://www.transitionnetwork.org/user/login?destination=node%2F17514%23comment-form&lt;/a&gt; -- complete with nice friendly green button
&lt;/p&gt;
&lt;p&gt;
I reckon we've covered most of the cases here... I'm done, can't think of much more to do...
&lt;/p&gt;
      </description>
      <category>Ticket</category>
    </item><item>
      
        <dc:creator>ed</dc:creator>

      <pubDate>Tue, 13 Sep 2011 15:22:27 GMT</pubDate>
      <title>status changed; resolution set</title>
      <link>http://localhost:8080/trac/ticket/224#comment:90</link>
      <guid isPermaLink="false">http://localhost:8080/trac/ticket/224#comment:90</guid>
      <description>
          &lt;ul&gt;
            &lt;li&gt;&lt;strong&gt;status&lt;/strong&gt;
                changed from &lt;em&gt;accepted&lt;/em&gt; to &lt;em&gt;closed&lt;/em&gt;
            &lt;/li&gt;
            &lt;li&gt;&lt;strong&gt;resolution&lt;/strong&gt;
                set to &lt;em&gt;fixed&lt;/em&gt;
            &lt;/li&gt;
          &lt;/ul&gt;
      </description>
      <category>Ticket</category>
    </item>
 </channel>
</rss>