新規記事投稿 フォロー記事投稿 記事のキャンセル
From: にあ <nir@mxa.meshnet.or.jp>
Subject: カウンタエントリの後ろにコントロールコードが入った場合
Date: 1998/01/12 22:13:33
Reference: mesh.npc.2/00191

1月10日に、あんどうさんは書きました。

>Mac +  IE4.0でアクセスすると、なぜかカウンタの数値が1にもどってしまい、
>npc.idxファイルをみると、最下行が
>
>0000000074 /~aaa/bbb/index.html(これが本物。最初これしか作ってなかった)
>
>0000000001 /~aaa/bbb/index.html(←一回、Mac,IE4.0でアクセスしたらできた。)
>
>0000000001 /~aaa/bbb/index.html(←二回、Mac,IE4.0でアクセスしたらできた。)
>
>0000000001 /~aaa/bbb/index.html(←三回、Mac,IE4.0でアクセスしたらできた。)
>
>と、なっていました。カウンタは一つしか設置してません。
>なぜでしょ?IEがぱーちくりんだからですか?
>
ほーぅ、これは面白いですね。(^^)

原因自体は簡単です。あんどうさんのペーヂでカウンタの場所指定の所が、

<img src="../cgi-bin/npc.cgi?L=/~antaku/software/index.html
&I=/home3/antaku/public_html/cgi-bin/npc.idx&P=ON&A=G&DI=2&T=0&C=008800,F8F8F0&W=4">

と L= の後ろに改行(LF)が入っているからなんです。

この場合 Mac版IE4は LF を CR に変えて送るのでしょうか、各カウンタエントリの
最後に CR が入っていて、決してマッチしないエントリが出来てしまっていますね。

直すためにはカウンタ行を1行で書く様にすれば良いのですが、npc.cgiの方でも
コントロールコードなどが入れられた場合は、それを無視するような機構を入れておくと
システムのfoolproof性を高める意味で良いかもしれませんね。
# 次版で入れるかもしれないです。