はてなアンテナ If-Modified-Since のバグ?

rss を If-Modified-Since フィールドをつけてリクエストするとき,GET リクエストだと更新時刻に応じて 304 を返してくれるのですが,HEADリクエストすると,困ったことに 304 を返してくれません.これに気がつかなくて相当悩んだわ・・・.

はてなアンテナ GET リクエストの場合

soga:~$ wget -S –header='If-Modified-Since: Tue, 01 Aug 2006 09:55:11 GMT' http://a.hatena.ne.jp/sosuitarou/rss

=> `rss.18'
a.hatena.ne.jp をDNSに問いあわせています… 221.186.146.28
a.hatena.ne.jp[221.186.146.28]:80 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています…
1 HTTP/1.1 304 Not Modified
2 Date: Tue, 01 Aug 2006 08:51:24 GMT
3 Server: Apache/1.3.27 (Unix) (Vine/Linux) mod_perl/1.29
4 Connection: Keep-Alive
5 Keep-Alive: timeout=5, max=100
6 Vary: Accept-Encoding
17:51:26 エラー 304: Not Modified。

はてなアンテナ HEAD リクエストの場合

soga:~$ wget -S –spider –header='If-Modified-Since: Tue, 01 Aug 2006 09:55:11 GMT' http://a.hatena.ne.jp/sosuitarou/rss

=> `rss.18'
a.hatena.ne.jp をDNSに問いあわせています… 221.186.146.28
a.hatena.ne.jp[221.186.146.28]:80 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています…
1 HTTP/1.1 200 OK
2 Date: Tue, 01 Aug 2006 08:51:31 GMT
3 Server: Apache/1.3.27 (Unix) (Vine/Linux) mod_perl/1.29
4 Content-Type: application/xml; charset=utf-8
5 Vary: Accept-Encoding
6 Keep-Alive: timeout=5, max=100
7 Connection: Keep-Alive
200 OK

はてなダイアリー RSS,GET リクエストの場合

はてなダイアリーのほうはGET, HEAD ともに問題ないのでなおさら気付かなかった.

soga:~$ wget -S –header='If-Modified-Since: Tue, 01 Aug 2006 09:55:11 GMT' http://d.hatena.ne.jp/sosuitarou/rss

=> `rss.18'
d.hatena.ne.jp をDNSに問いあわせています… 221.186.129.146, 61.196.246.67, 221.186.146.29
d.hatena.ne.jp[221.186.129.146]:80 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています…
1 HTTP/1.1 304 Not Modified
2 Date: Tue, 01 Aug 2006 08:52:10 GMT
3 Server: Apache/1.3.27 (Unix) (Vine/Linux) mod_perl/1.29
4 Connection: close
5 Vary: Accept-Encoding
17:52:11 エラー 304: Not Modified。

はてなダイアリー RSS,HEAD リクエストの場合

soga:~$ wget -S –spider –header='If-Modified-Since: Tue, 01 Aug 2006 09:55:11 GMT' http://d.hatena.ne.jp/sosuitarou/rss

=> `rss.18'
d.hatena.ne.jp をDNSに問いあわせています… 221.186.129.146, 61.196.246.67, 221.186.146.29
d.hatena.ne.jp[221.186.129.146]:80 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています…
1 HTTP/1.1 304 Not Modified
2 Date: Tue, 01 Aug 2006 08:52:02 GMT
3 Server: Apache/1.3.27 (Unix) (Vine/Linux) mod_perl/1.29
4 Connection: close
5 Vary: Accept-Encoding
17:52:03 エラー 304: Not Modified。

コメントを残す