tDiary-2.1.4からは section_enter_procと section_leave_procが用意されてるので、現在 body_leave_procを使って一日毎に行ってることを、section_leave_procでセクション毎に行うだけ。
気が付いたらファイルサイズが 3.8GBを超えてるのにまだダウンロードしてる。32bit版は約 3.5GBのはずなのに。
ダウンロード済みのサイズがマイナスMBになってるし。進捗グラフがマイナス%になってる。MSのサーバーに「Range: bytes=-123456789-」みたいにマイナスから始まる変な要求を送ってる。
構わないと思うのですよ、リロードの度にプラグインを評価しなくても。
--- index.rb~ 2005-06-13 14:05:11.000000000 +0900 +++ index.rb 2006-06-11 00:52:18.203125000 +0900 @@ -60,11 +60,15 @@ body = '' head['Last-Modified'] = CGI::rfc1123_date( tdiary.last_modified ) + require 'time' + ims = ENV['HTTP_IF_MODIFIED_SINCE']; ims = ims ? Time.httpdate(ims) : Time.at(0); # ENV? + diary_changed = (tdiary.last_modified - ims) > 30; # 30? + # ETag testing code #require 'md5' #head['ETag'] = MD5::md5( body ) - if /HEAD/i !~ @cgi.request_method then + if /HEAD/i !~ @cgi.request_method and diary_changed then if @cgi.mobile_agent? then body = conf.to_mobile( tdiary.eval_rhtml( 'i.' ) ) head['charset'] = conf.mobile_encoding @@ -73,15 +77,15 @@ body = tdiary.eval_rhtml head['charset'] = conf.encoding head['Content-Length'] = body.size.to_s - head['Pragma'] = 'no-cache' - head['Cache-Control'] = 'no-cache' +# head['Pragma'] = 'no-cache' +# head['Cache-Control'] = 'no-cache' end head['cookie'] = tdiary.cookies if tdiary.cookies.size > 0 print @cgi.header( head ) print body else - head['Pragma'] = 'no-cache' - head['Cache-Control'] = 'no-cache' +# head['Pragma'] = 'no-cache' +# head['Cache-Control'] = 'no-cache' print @cgi.header( head ) end rescue TDiary::ForceRedirect