はてなダイアリーの更新時刻

Posted by yoosee on Web at 2004-01-21 23:42 JST

*1  はてなの last-modified

五月雨作者のakr さんの日記 によれば、五月雨は基本的に他のアンテナを信用せず、lirs 等の更新情報を元にもう一度自分でチェックに行くらしい。且つコンテンツを GET で fetch するため、HEAD にのみ last-modified フィールドを返すはてなダイアリー 等の場合、更新時刻を正しく取ることが出来ていないようで、ステータスが [NoLM] になる。はてなダイアリーの 2003-03-24 の記述 を見ると、HEAD だけではなく GET リクエストの場合にも last-modified フィールドを返すようにした、と言っている。だが実際に d.hatena.ne.jp にアクセスしてみてみると、HEAD の場合 の http header は
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2004 04:37:16 GMT
Server: Apache/1.3.27 (Unix)  (Vine/Linux) mod_perl/1.26
last-modified: Mon, 19 Jan 2004 16:44:20 GMT
Content-Type: text/html; charset=euc-jp
となり last-modified フィールドを含むが、GET の場合の http header は
HTTP/1.1 200 OK
Date: Wed, 21 Jan 2004 04:36:30 GMT
Server: Apache/1.3.26 (Unix)  (Vine/Linux) mod_perl/1.26
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=euc-jp
のように、last-modified を含まないように見える。

はてなダイアリー日記にコメントを書いてみたけど、こう言う質問をするのはここでいいのかな...

五月雨

Posted by yoosee on Web at 2004-01-21 23:42 JST

*1  Exception

昨日の update の際、間違って各サイトの更新情報が格納されている status.rm ファイルを破損してしまう。仕方なく、 samidare --force でサイト情報の強制取得を開始したのだが、対象サイトが 404 で情報が取れなかったりすると、各エントリーを展開した際の子要素が Null になってしまい Exception を吐いて止まってしまうようだ。これは config.yml から問題のあるエントリを外して対処。また、更新時刻が正しくとれていないとチェック間隔の計算で Exception が飛ぶ。
+   begin
    r = s2t + (s2t - s1t)
+   reqcue Exception
+    r = Time.now
+  end
として対処。ついでなので csv の最新版にしておく。
問題解決のために何度も samidare を起動してしまい、何度も GET に行ってしまった。申し訳ない。

About W.W.Walker

World Wide Walker は yoosee による blog です。PDA, Web・サーバ技術, 美味しい食べ物などの話題を取り上げています... read more

Monthly Archives

Select Month to read
  

Ads

Recent Entries

Related Sites