Doh, sorry, the bug is in info.magnolia.module.cache.executor.UseCache in the ifModifiedSince() method line 105 on the 3.6.1 branch.
On Wed, 22 Oct 2008 12:09:28 +0100, "Jon Barber" <[email protected]> said: > We are using Magnolia CE 3.6.1 and we have an issue with handling > if-modified-since headers. To illustrate : > > $ wget --header='If-Modified-Since: Tue, 1 Jan 2008 19:58:25 GMT' > http://localhost:8080/webapp/jo/home.html > --2008-10-22 11:41:56-- http://localhost:8080/webapp/jo/home.html > Resolving localhost... 127.0.0.1 > Connecting to localhost|127.0.0.1|:8080... connected. > HTTP request sent, awaiting response... 304 Not Modified > 2008-10-22 11:45:52 ERROR 304: Not Modified. > > So basically magnolia is saying content has not been modified since Jan > 1st this year, which is just plain wrong. > > So digging through the source code, and attaching a debugger to my > magnolia instance, the problem is in info.magnolia.cms.cache.CacheFilter > line 162 (however on trunk this is now in > info.magnolia.module.cache.executor.AbstractExecutor in the > ifModifiedSince() method). I suggest the method is wrong, the error > being that it checks to see if the cache modification date is greater > than the header value, and returns false if it is. This signals that the > server content is not newer, when in fact it is. > > Indeed, looking elsewhere the exact same logic is present in > info.magnolia.cms.cache.CacheFilter in the ifModifiedSince() method, > where the inverse logic is used for the same test. > > Can you please confirm this is the case. > > Thanks, > > Jon. > > > ---------------------------------------------------------------- > for list details see > http://www.magnolia-cms.com/home/community/mailing-lists.html > ---------------------------------------------------------------- ---------------------------------------------------------------- for list details see http://www.magnolia-cms.com/home/community/mailing-lists.html ----------------------------------------------------------------
