ただただしです。

cgi.rbのrfc1123-dateですが、dayをゼロでパディングしてくれないので、
Last-Modifiedをこれで作ると認識してくれないブラウザが多いようです。

 RFC1123に反してはいないんですが(1*2DIGIT month 2*4DIGITだし)、これ
がHTTP/1.1で使われることを想定しているのなら、RFC2616では

2DIGIT SP month SP 4DIGIT

となっています。2桁固定にしても問題はないのでそうしたらよいのではな
いでしょうか。

 CVS環境がないので、最新のスナップショットからのパッチです。簡素に
してしまった。

===================================================================
--- cgi.orig.rb Wed Jan 24 15:01:47 2001
+++ cgi.rb      Fri Mar  2 13:09:06 2001
@@ -214,9 +214,6 @@
     "VARIANT_ALSO_VARIES" => "506 Variant Also Negotiates"
   }

-  RFC822_DAYS = %w[ Sun Mon Tue Wed Thu Fri Sat ]
-  RFC822_MONTHS = %w[ Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec ]
-
   def env_table
     ENV
   end
@@ -350,13 +347,10 @@
 =begin
 === MAKE RFC1123 DATE STRING
   CGI::rfc1123_date(Time.now)
-    # Sat, 1 Jan 2000 00:00:00 GMT
+    # Sat, 01 Jan 2000 00:00:00 GMT
 =end
   def CGI::rfc1123_date(time)
-    t = time.clone.gmtime
-    return format("%s, %d %s %d %.2d:%.2d:%.2d GMT",
-                RFC822_DAYS[t.wday], t.day, RFC822_MONTHS[t.month-1], t.year,
-                t.hour, t.min, t.sec)
+    time.clone.gmtime.strftime( '%a, %d %b %Y %X GMT' )
   end
===================================================================

■■ Don't Think, Buuuuy. ■■
■  た   だ   た   だ   し  ■
■http://www.spc.gr.jp/sho/