DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15943>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15943

SSI should honor cache-related headers for virtually-included components

           Summary: SSI should honor cache-related headers for virtually-
                    included components
           Product: Apache httpd-2.0
           Version: 2.0.32
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Enhancement
          Priority: Other
         Component: mod_include
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: [EMAIL PROTECTED]


Today, SSI pages are considered "dynamic" and do not pass any cache-related
headers back to the browser (e.g. Last-Modified), unless you use the XBitHack
hack to send a Last-Modified header indicating the modification time of the SSI
page that was called.  One can use mod_expires to set an Expires header for some
pages, but this isn't a proper solution either.

I would like to see an SSI page intelligently pass cache-related headers back to
the browser.  Individual components included in a document might have their own
Last-Modified dates, their own Expires dates and even some Cache-Control
headers.  At a minimum, Apache should pass the most restrictive set of headers
back up to the browser (e.g. the latest Last-Modified date, the earliest Expires
date, and the smallest Cache-Control: max-age time).  If one component sent a
"Cache-Control: no-cache" header back, that should effectively make the entire
SSI page "no-cache" as well.  If a CGI component responded with a Last-Modified
date of an hour ago, and that was the only component that changed recently,
that's what the browser would receive for the entire SSI page.

Obviously, this should be a configurable option, since there would be a
performance impact, as the server would need to parse and perform all of the SSI
functions on the document *before* it could return any headers, but this is an
acceptable loss.  

If one wanted to go one step further, this could be integrated with mod_proxy
such that <!--#include virtual="..." --> requests would be proxied internally. 
Intelligent CGI components expressing a good max-age and Expires headers could
save themselves from being called frequently for SSI, as the proxy module would
step in and deliver the cached response to the calling SSI page.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to