? boost-608102.patch
Index: boost.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/boost/boost.admin.inc,v
retrieving revision 1.1.2.1.2.3.2.91
diff -u -p -r1.1.2.1.2.3.2.91 boost.admin.inc
--- boost.admin.inc	18 Oct 2009 08:49:44 -0000	1.1.2.1.2.3.2.91
+++ boost.admin.inc	21 Oct 2009 00:43:45 -0000
@@ -705,6 +705,18 @@ function boost_admin_boost_performance_p
     '#options'       => $options,
     '#description'   => $description,
   );
+  $form['htaccess']['boost_apache_etag'] = array(
+    '#type'          => 'radios',
+    '#title'         => t('ETag Settings'),
+    '#default_value' => variable_get('boost_apache_etag', 0),
+    '#options'       => array(
+      0 => 'Do Nothing',
+      1 => "Set FileETag 'None' - Do not send an etag",
+      2 => "Set FileETag 'All' - Default if enabled",
+      3 => "Set FileETag 'MTime Size' - Useful in server clusters",
+    ),
+    '#description'   => t('Uses <a href="!link">FileETag Directive</a> to set <a href="!about">ETags</a> for the files cached by Boost. <a href="!stack">More info on this subject</a>', array('!link' => url('http://httpd.apache.org/docs/trunk/mod/core.html#fileetag'), '!about' => url('http://en.wikipedia.org/wiki/HTTP_ETag'), '!stack' => url('http://stackoverflow.com/questions/tagged?tagnames=etag&sort=votes&pagesize=50'))),
+  );
 
   // Clear database button
   $form['clear'] = array(
@@ -892,6 +904,19 @@ function boost_admin_generate_htaccess($
     $string .= "      Header set Expires \"Sun, 19 Nov 1978 05:00:00 GMT\"\n";
     $string .= "      Header set Cache-Control \"no-store, no-cache, must-revalidate, post-check=0, pre-check=0\"\n";
     $string .= "    </IfModule>\n";
+    switch (variable_get('boost_apache_etag', 0)) {
+      case 0:
+        break;
+      case 1:
+        $string .= "    FileETag None\n";
+        break;
+      case 2:
+        $string .= "    FileETag All\n";
+        break;
+      case 3:
+        $string .= "    FileETag MTime Size\n";
+        break;
+    }
     $string .= "  </FilesMatch>\n";
   }
   if (BOOST_CACHE_HTML || BOOST_CACHE_XML || BOOST_CACHE_CSS || BOOST_CACHE_JS || BOOST_CACHE_JSON) {
