WWWのホームページにカウンターをつけるための情報です。
last modified: 02/28/98 ; 15:33:31 (JST)
研コンでは2種類のカウンターを用意しています。それぞれ特徴があるので、 よく考えてから使ってみて下さい。
文字通りテキストで表示されるカウンターです。 SSIを利用しているため、はじめにSSIを可能にする設定をしなければ いけないのがちょっと面倒です。また グラフィック版と比べて見栄えはいまいちですが、 確実に計数してくれます。
まずSSIによるコマンド実行を可能にする必要があります。 そのためにはカウンターを表示したいページの置いてあるディレクトリに .htaccessというファイルを作り、 その中に以下のような設定を書いておく必要があります。
Options Includes(もしすでにこの行を含む.htaccessが同じディレクトリにあれば、 必要ありません)
SSIを可能にすると外部から指定されたコマンドを実行することができるため、 大変危険です。不適当なコマンドを含む HTMLファイルを置かないよう、 充分に注意して下さい。
ここまでできたらあとは簡単で、カウンター数を表示させたい場所に 数字のかわりに
<!--#exec cmd="/home/WWW/access_count/access_count"-->と書くだけです。ホームページが読み出されると、 その部分が数字に置き換わります。
例えば
このページがアクセスされた回数:と書いておけば
<!--#exec cmd="/home/WWW/access_count/access_count"-->
このページがアクセスされた回数: [an error occurred while processing this directive]と表示されます。
このグラフィック版は Count.cgi というもので、 CGIを利用してカウンター画像を合成し、表示するものです。 CGIなのでSSIのような面倒な設定がいらず、 見栄えのよい表示ができますが、 グラフィックを読まない読者(画像表示をオフにしている読者、 Lynxなどのテキストブラウザを使っている読者)は カウンターを見ることができず、また計数もされなくなってしまいます。
ここでは簡単に説明しますが、もし他に知りたい点があれば、 マニュアルを参照して下さい。
基本的には簡単で、 IMGタグで/cgi-bin/Count.cgiを呼び出すだけです。 ただし表示したいカウンター数を記録しているデータファイルの名前を 指定する必要があります。
ここでsample.datというのがデータファイルの名前です( align=absmiddleは IMGタグのオプションなのでつけなくても 構いません)。すると実際の表示は次のようになります。<img src="/cgi-bin/Count.cgi?df=sample.dat" align=absmiddle>
データファイル名は(各自のユーザ名).dat を使って下さい。 たとえば筆者のユーザ名はmorikawaなので、 <img src="/cgi-bin/Count.cgi?df=morikawa.dat" align=absmiddle> とします。つまり1人1つずつカウンターがもてることになります。
なおデータファイルの管理は意外にズサンですので、数値が消えてしまったり、余計に増えてしまったりする可能性もありえますが、これは技術的にそういうものですので、責任は負いかねます。御了承下さい。
Count.cgiにはほかにもオプションがあります。 詳しくはマニュアルを参照していただくとして、 ここでは代表的なものをいくつか紹介します。 複数のオプションを組み合わせて指定する場合の注意も見ておいて下さい。
オプション | 説明 | 表示例 | 省略時 |
---|---|---|---|
df=file | データファイル名を指定 | - | 乱数を表示 |
ft=X | 枠の太さ(ピクセル数)を指定(0〜) | 枠の太さ10 Count.cgi?ft=10 | ft=4 |
md=X | 桁数を指定(5〜10) | 8桁で表示 Count.cgi?md=8 | md=6 |
frgb=RRGGBB | RGBで枠の色を指定(16進6桁) | ピンクで表示 Count.cgi?frgb=ffa0a0 | frgb=648bd8 |
dd=A | 数字のタイプを指定(A〜E) (世間ではたくさんの種類がありますが とりあえず5種類だけ用意しています) A: B: C: D: E: | Eタイプを表示 Count.cgi?dd=E | dd=A |
"Count.cgi"と最初のオプションの間は 上述のように "?" で区切りますが、 それ以降のオプションは "&" で区切ります。
例: 筆者が青い枠付きの5桁の数字(タイプB)で表示する場合
<img src="/cgi-bin/Count.cgi?df=morikawa.dat&frgb=4040ff&md=5&dd=B" align=absmiddle>
![]()
注:上の例では一行が長いので IMGタグの途中で折り返していますが、折り返す必要はありません。折り返す場合 src="..." など引用符で囲まれた中で折り返さないように注意して下さい。
カウンターに限ったことではないですが、 IMGタグには大きさ(width,height)を指定するのが望ましいとされています。なぜなら、大きさが指定されていないと画像自体が読み込まれるまで画像のためにとっておく広さをブラウザが判断できず、ページの表示が遅くなってしまうからです。
このページの画像は敢えて大きさを指定していません。読み込みの遅いところでは 途中で表示が止まってイライラしたのではないでしょうか。
カウンターの場合、文字のタイプや桁数、枠の幅などが決まらないと 全体の大きさがわからないのですが、自分の好みの見栄えになったら 画像の大きさを調べて指定しておきましょう。
たとえば横83ピクセル、縦28ピクセルの画像なら
と太字の部分を付け加えておきます。<img src="/cgi-bin/Count.cgi?df=morikawa.dat&frgb=4040ff&md=5&dd=B" align=absmiddle width=83 height=28>
なお画像の大きさを調べるには、Netscapeなどの場合コンテクストメニューから「画像を表示」(View image)を選んでもいいですし、一度画像をセーブ(ダウンロード)して別の画像表示ソフトで見てみてもよいでしょう。
ちなみに ALTオプションも HTML4.0 では必須となりましたので、 HTML4.0を書くつもりなら ALT="Counter" なり ALT="" なり、 適当につけておきましょう。
上述のように画像版カウンターをつけてはみたものの、 何度アクセスしても数が増えないということがあります。
結論からいうとこれは正常な動作です。なぜかというと、 このカウンター(Count.cgi)では 無駄にアクセス数を増やさないように 同じ相手(ホスト = IPアドレス) からの連続したアクセスは数えないようになっているからです。 これには時間制限はないので、間に何日あけようとも、 その間に他の相手のアクセスのない限り回数は増えません。
この場合動作をチェックするためには、 別のコンピュータからアクセスするなどしてみて下さい。
なおそのほかに、 ブラウザがカウンター画像をキャッシュしているため読み込みがされず、 結果として回数が増えないということもありえます。 画像をカウンターとしているため仕方がない部分もありますので、 御容赦下さい。
以上です。では、 Happy page-making!
WWW counter /
研コン室 /
相談員 森川
< morikawa@med.teikyo-u.ac.jp >