« 本日のはまりコード | メイン | CGI-Application-4.07_01 »

[warn] /test.cgi did not send an HTTP header

おそらくModPerl::Registry環境でしかでないのだけど、動的コンテンツに対して、"If-Modified-Since"を送ると、error_logに、

[warn] /test.cgi did not send an HTTP header

というのが、記録される。直接的な害はないことは確認済み。


再現させるには、

#!/usr/bin/perl
use strict;
use warnings;
print "Content-Type: text/html\n\n";
print "x" x 1000;

という簡単なCGIを書いて、

#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
my $url = "http://localhost/test.cgi";
my $ua = LWP::UserAgent->new;
my $req = HTTP::Request->new(GET => $url);
$req->header( 'If-Modified-Since' => HTTP::Date::time2str );
my $res = $ua->request($req);
print $res->status_line,"\n";

を実行する。

最後のstatus_lineは、"304 Not Modified"になる。
これ自体、よくわからない動作なんだけど、Last-Modifiedを吐いていない動的コンテンツにIf-Modified-Sinceヘッダを送ってくる某Safariがまぁ、あれだ。

ちなみに、Registry環境でCGI.pmを使ってheader出力をしている場合は(If-Modified-Sinceヘッダは送られてくるが)問題ない。

参考URL:
mnot’s Web log: Bug Syncronicity
Bug 39287 - Incorrect If-Modified-Since validation (due to synthetic mtime?)

トラックバック

この一覧は、次のエントリーを参照しています: [warn] /test.cgi did not send an HTTP header:

» ◆木村衣里◆東京・大田の男性殺害で逮捕されたグラドルの転落人生【主演映像】 from ◆木村衣里◆東京・大田の男性殺害で逮捕されたグラドルの転落人生【主演映像】
東京都大田区鵜の木のマンションで先月26日、男性が背中を刺されて殺害された事件... [詳しくはこちら]