RSS reload failure

Found a bug? Tell us!!
Post Reply
michaelgsandtner
Regular
Posts: 7
Joined: Mon Sep 03, 2007 12:14 pm
Location: Vienna, Austria

RSS reload failure

Post by michaelgsandtner »

serendipity 1.2
I assume Last-modifed header is used twice with different purposes:
serendipity/bundled-libs/Smarty/libs/Smarty.class.php
serendipity/rss.php
This may lead to a "200 OK" response with an empty list instead of "304 Not Modifed",
thus the feedreader (at least Firefox Livebookmarks) displays that empty feed, instead of keeping the unmodifed list.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: RSS reload failure

Post by garvinhicking »

Hi!

The smarty file should be unrelated, because the variable "cache_modified_check" is never set to true, so Smarty never emits the Last-Modified header.

Last-modified is emitted by rss.php only.

Please give more details what your actual problem is.

Regards,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
michaelgsandtner
Regular
Posts: 7
Joined: Mon Sep 03, 2007 12:14 pm
Location: Vienna, Austria

Re: RSS reload failure

Post by michaelgsandtner »

I think Last-modified and Etag should not be different, but they are.
Reloading the Livebookmark produces the following, and then the bookmarrk is empty:
https://gondor-dev.magwien.gv.at/gsa/se ... index.rss2

GET /gsa/serendipity/index.php?/feeds/index.rss2 HTTP/1.1
Host: gondor-dev.magwien.gv.at
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; de; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
X-Moz: livebookmarks
Cookie: PHPSESSID=0eu9reuv8igroc5krcnku9gu85; serendipity[author_token]=98819dc41558ffde16b0552af9d4d41f9c6220f8; serendipity[old_session]=0eu9reuv8igroc5krcnku9gu85; serendipity[userDefLang]=de; Apache::AuthCookieHandler_GondorAuth=F/NKP9Iej4Hu+d1cfPaD3piJC5H59YNnW1JD2o7y27e8wKwk1wQ6+DKepBmj0LdD2aUYhB+xTlWi=0alumO4ox528AUUfAbecePBrHBlkS0JOcBmchdkw/54Q=3d=3d=0a; Apache::AuthCookieHandler_GondorAuth_changed=1234263372
If-Modified-Since: Tue, 10 Feb 2009 10:56:12 GMT
If-None-Match: "Tue, 13 Jan 2009 10:37:36 GMT"
Cache-Control: max-age=0

HTTP/1.x 200 OK
Date: Tue, 10 Feb 2009 11:02:42 GMT
Server: Apache
X-DL-HatStyle: wo-neu.nonav
Cache-Control: private, pre-check=0, post-check=0, max-age=0
Pragma: no-cache
Etag: "Tue, 13 Jan 2009 10:37:36 GMT"
Content-Length: 1125
Content-Type: text/xml; charset=utf-8
Expires: 0
Last-Modified: Tue, 10 Feb 2009 10:56:12 GMT
Client-Peer: 10.152.170.27:442
Client-Response-Num: 1
Set-Cookie: serendipity[old_session]=0eu9reuv8igroc5krcnku9gu85; expires=Thu, 12-Mar-2009 11:02:42 GMT; path=/gsa/serendipity/; domain=gondor-dev.magwien.gv.at
Set-Cookie: serendipity[userDefLang]=de; expires=Thu, 12-Mar-2009 11:02:42 GMT; path=/gsa/serendipity/; domain=gondor-dev.magwien.gv.at
X-Blog: Serendipity
X-Powered-By: PHP/5.2.6
X-Serendipity-InterfaceLang: de
X-Serendipity-InterfaceLangSource: Database
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
----------------------------------------------------------
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: RSS reload failure

Post by garvinhicking »

Hi!

Could it be other files or server settings are interferring?

Try to open your rss.php file, find the header('Last-Modified') line, change the headername to "Last-Modified-s9y" and save the file. Then check if what you see in Last-Modified-s9y" is maybe the right timestamp. It should always contain the stamp of the most recent entry.

Actually, the Etag and Last-Modified should really be identical in the s9y output. You could modify the Smarty.php line, then you'll see that it has no relevance.

Apache might enforce Last-Modified on you due to the file timestamp?

Regards,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
michaelgsandtner
Regular
Posts: 7
Joined: Mon Sep 03, 2007 12:14 pm
Location: Vienna, Austria

Re: RSS reload failure

Post by michaelgsandtner »

I located the problem, and it is not a serendipity problem.
We are running serendipity behind our self-written authentication portal (on a different host with an according event plugin). There is a bug in the portal, which overwrites the Last-modified header sent by serendipity.

Thx --Michi
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: RSS reload failure

Post by garvinhicking »

Hi!

Thanks for notifying us about the real cause, I was already wondering which causes this could have. :-)

Best regards,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Post Reply