
Speed Counter ver1.01 /UserSoft
高速に動作するJavaScriptタイプのカウンタ
テーマは、カウント表示速度の高速化です。
画像の表示/簡易アクセス解析/文字色をカウントごとに変更
などの機能をオプションとしてそなえています。
機能全般
表示にはJavaScriptを利用します
オプション機能
簡易リロード防止
簡易アクセス解析/解析ページの公開
複数文字色表示(レインボーカラー)
数値減少
画像表示
数種類の画像セットの併用利用
カウントオンリー、表示オンリーの設定可能
コメント
数値をカウントするルーチンと、数値を表示するルーチンとをわけてあることで、
数値を表示する際にCGIの読み込みの必要を回避し、
普通のHTMLを表示する速度でカウンタの数値を表示させることができる高速カウンタです。
CGIの実行速度が遅いサーバなどで特に効果を発揮してくれると思います。
もともとはテキストカウンタだったのですが、
画像も表示させることができるようにいたしました。
複数セットの画像を併用利用できるめずらしい機能も追加しました。
リロード防止機能と、アクセス解析の機能も強化してあります。
アクセス解析では設定により、定期的にログを自動通知させることもできます。
JavaScriptを使うということで、多少不慣れな人には最初つらいかもしれませんが、
逆にJavaScriptと組み合わせたり、タグを使うことで実はいろいろなことができたりしますので、
意外とおもしろいカウンタになっていると思います。
CGIの種類:ユーザソフト
この種類のCGIをご利用になるにはライセンスが必要です。
ライセンスを取得されていない方は、ライセンスを取得されますようお願いいたします。
(2002年3/31までは移行期間としてフリーソフトとしてご利用になれます)
利用規定:当サイト利用規定
ダウンロード:
ver1.0 正式版
ver1.2 β公開
利用規定に同意されたものとみなさせていただきます。
ファイル中身と対応パーミッション
spcnt777/
spcnt.cgi755 CGI本体
count.txt666 カウンタファイル
dummy.gif644(バイナリ) ダミー画像
cgi-adr.pl644 補助CGI
以上のファイルは必須
access.log666 アクセスログファイル
ip.log666 IPログファイル
img/0.gif 〜 9.gif 644(バイナリ) サンプル数字画像
bg.gif サンプル背景画像
readme.txt 補助ファイルと説明書
jcode.pl 自動ログ通知機能利用時の補助ファイル
以上が、入っているファイルの一覧です。
必須ファイルはサーバへの転送が絶対に必要なものです。
補助ファイルについては設定によっては不必要です。
画像ファイルを数点サンプル代わりにお付けいたしますので、いれかえてお使いください。
パーミッションは、プロバイダで推奨値がある場合にはそちらに設定してください。
括弧内にバイナリと無いものはアスキー(テキスト)モードで転送。
設置テスト
テスト設置に際して、転送前に最低限修正の必要な項目
Perlパス(PerlPass)・・・プロバイダの値に書き換えてください。
CGIをアップし、パーミッションを変更後、
「アドレス/spcnt.cgi?v 」とブラウザにて入力してみてください。
バージョン情報欄がきちんと表示されればCGI自体の設置は成功しています。
基本項目の設定方法
カウンタの数値の設定方法
count.txtをエディタ(メモ帳など)で開く。
COUNT='0';
という部分があります。この0を初期値の数字に書き換えてください。
カウント値の途中変更も同様の作業で行うことができます。
設定項目の一覧とその内容の説明
「CGIの名称」
CGIファイルの名前です。
デフォルトでは「spcnt.cgi」となっています。
誤作動の原因となりますので、必ず正しいファイル名を記入してください。
「カウントアップ方法」
Speed Counterは、通常のカウント方法のほかに、
数値を減少させていくカウント方法も取ることができます。
「リロード防止レベル」
訪問者のIPを記録しておき、そのIPと比較することでリロードを防止する機能を備えています。
過去何件分のIPを記録しておくか・・がリロード防止レベルです。(保存しておく「数」)
0と設定すれば、リロード防止機能自体使用しません。(MIN設定)
-1と設定すれば、日付が変わるまでIPを記録し続けます。(MAX設定)
100など、具体的な数値を指定することで、その数分だけIPを記録しておき、照合します。
この設定をいれると、多少なりともカウンタの速度が低下しますので、
いらないならば0と指定してしまっても差し支えはないでしょう。
「レインボーカラー」
カウンタの数値をテキストで表示させる設定を利用しているとき、
カウンタの文字色を、あらかじめ指定した色の中で、順番に表示させることができる機能です。
デフォルトでは、とりあえず7色、虹の色に近いものを選んでいますので
レインボーカラーと名づけています。
(もちろん、7色じゃなくてもかまいませんし、色も自由に指定できます)
HTMLでの呼び出し文は、
「レインボーカラー機能利用」という呼び出し文を使ってください。(詳細は下にあります)
「複数画像セット」
Speed Counterではカウンタの表示に画像を利用することができますが、
2種類以上の画像を併用利用することもできます。
この機能を利用すると、複数の画像セットを順番に表示します。
なお、CGIでの設定の場所はレインボーカラーの部分と同じ場所です。
画像ファイルは、blue0.gif〜blue9.gif/red0.gif〜red9.gifというように、
レインボーカラー設定箇所で、入力した色の名前と対応させます。
「アクセス解析」
簡易的なアクセス解析機能です。
訪問者の取得カウント、IP、ホスト、OS、ブラウザ、訪問日時、リンク元を取得し、一覧にします。
この一覧を一般に公開することも可能です。
(管理者がログを見る場合も基本的にHTMLで見ることになります)
一点だけ問題があります。
「リンク元」を取得したい場合には、構造上呼び出し文がJavaScriptつきのものになってしまいます。
そのため、JavaScriptをOFFにされている方のカウントが取られない結果となります。
(リロードをOFFにされている方は、JavaScriptと普通のHTMLと二つ呼び出し文をいれることで
回避しようと思えばできなくはありません) (詳細は下のFAQにて)
「ログの自動通知」
アクセス解析機能を利用しているとき、
さらに、そのログを定期的にメールで指定アドレスに送信させることができます。
なお、アクセス解析ログ保存最大数>メール送信数 となるように設定してください。
この機能を利用するには、サーバがSendmailに対応していることが条件です。
「解析結果呼び出しパスワード」
解析結果を自分で見る/公開する際には、
spcnt.cgi?log というようなアドレスにブラウザでアクセスします。
この「log」の部分を自分で自由に変更できます。
公開したい場合にはわかりやすいものにでも変えてそれにリンクを貼ってください。(このままでもOKですが)
自分だけ見たい場合には、わかりにくいものにでも変更して、自分はブックマークしておくといいでしょう。
仮に、一切公開させたくない場合には、「v」と設定してください。
(バージョン情報画面しか開きませんので、アクセスされて見られる心配はなくなります。)
「ライセンスの種類」
UserSoftに関しては、ご利用にあたってライセンスが必要です。
そのライセンスの登録情報を記入する欄です。
(注:移行期間につき、2002年3/31までは個人の非商用利用に限り、ライセンスは不要です)
「ユーザー情報」
スクリプトを利用される方の情報を記入する欄です。
管理者名や、E-mail、企業名などを必要に応じてご記入ください。
ここに記入された内容はバージョン情報のページにてご覧になれます。
ホームページへの組み込み方法
Speed Counterを利用するには、
数値記録用(カウント取得用)の呼び出し文と、
数値表示用の呼び出し文の二種類を別々にHTMLに組み込みます。
このとき、どちらか一方のみを組み込むことで、
カウント取得のみ、表示のみといった設定にもできます。
なお、数値記録用の呼び出し文は二種類ですが、
数値表示用の呼び出し文は、表示のさせ方によって多数用意されていますので、
どれかひとつを選んでお使いください。
JavaScriptとHTMLを書き換えることで、
ここに用意されている呼び出し文を自由にカスタマイズすることも可能です。
カウント値記録用 タグ(二種類)
リンク元を取得しない呼び出し文
<img src="http:// -- address -- /spcnt/spcnt.cgi" width="1"
height="1">
リンク元を取得する呼び出し文
<script language="JavaScript">
<!--
document.write("<img src= --address --/spcnt/spcnt.cgi?" + document.referrer
+ " width=1 height=1>");
// -->
</script>
どちらか片方をHTMLのBODY中に埋め込んでください。
どこにいれても動きますが、ページの表示速度をあげるため、BODYの一番下にいれることをお勧めします。
なお、下の方を使った場合、リンク元は取得できますがJavaScriptを利用していない方のカウントを取得できません。
FAQも参考にしてください。
数値表示用タグ(多数あるので、用途に合わせてひとつ選択)
この場で用意してあるサンプル文の一覧
・数値のみ表示
・桁数を指定して、数値のみ表示
・レインボーカラー利用時(数値の色を1カウントごとに変える機能)
・数字画像の利用時
数値を表示するためのタグは1種類ではありません。
JavaScriptとHTMLのタグを使って、自分でデザインすることになります。
この場では、あくまで数種類のみ紹介します。
これにさらにHTMLのタグを組み合わせたりしてください。
レインボーカラーOFF、数値のみ表示の場合
<Script Language="JavaScript" src="http:// -- address -- /spcnt/count.txt"></Script>
<script language="JavaScript"><!--
document.write(COUNT);
// --></script>
レインボーカラーOFF、数値の桁数まで指定する場合
<Script Language="JavaScript" src="http:// -- address -- /spcnt/count.txt"></Script>
<Script Language="JavaScript"><!--
C='0000'+C;L=C.length;C=C.substr(L-5,5);
document.write(COUNT);
// --></Script>
(赤の一行が追加。これは5桁の時、他の桁の場合は「5」をその数字へ。また紫の0の数も(桁-1)に)
画像を利用する場合の呼び出し文
<Script Language="JavaScript" src="count.txt"></script>
<script language="JavaScript">
<!--
len = COUNT.length;
for (i=0; i<len; i++){
val = COUNT.substring(i,i+1);
document.write("<img src=" + val + ".gif>");
}
-->
</script>
複数セットの画像を利用する場合
<Script Language="JavaScript" src="count.txt"></script>
<script language="JavaScript">
<!--
len = COUNT.length;
for (i=0; i<len; i++){
val = COUNT.substring(i,i+1);
document.write("<img src=" + COLOR + val + ".gif>");
}
-->
</script>
レインボーカラーONの場合
<Script Language="JavaScript" src="http:// -- address -- /spcnt/count.txt"></Script>
<Script Language="JavaScript"><!--
document.write("<font color=" + COLOR + ">" + COUNT
+ "</font>");
// --></Script>
この3つのものは、数字を表示させる上での最低限のものです。
実際にはタグと組み合わせることになると思います。
なお、数値を表示させたい場所に数値表示用タグをいれてください。
カウント取得用はどこでもかまいません(一番下にいれるといいでしょう)
FAQ(よくあるご質問と回答)
動画GIF画像は使えますか?
使えます。
普通の画像の代わりに動画GIFファイルを置いておけばOKです。
ただし、動画GIFの種類や、サーバの重さによっては一部表示がずれる可能性もあります。
リンク元を取得し、かつJavaScriptを利用していない人のカウントも取りたい
リンク元を取得するには、JavaScriptの機能を使わねばならないため、
どうしても呼び出し文がJavaScript利用のものとなってしまいます。
(これはSSI等を使わない限り回避できない問題です)
そのため、JavaScriptをオフにされている方のカウントは取れない結果となってしまいます。
これを回避する方法として、
もしリロードレベルをマイナス(つまり、リロードを許可しない状態)に設定しているならば、
JavaScript利用のカウント値取得文と、HTMLのカウント値取得文とを両方HTML中に記述する方法があります。
(この際、必ずJavaScriptの呼び出し文を上にしてください。)
こうすることで、
JavaScriptが利用できる場合 >> 一回目でカウント、二回目の呼び出しはリロードと判断されカウントされず
JavaScriptが利用できない場合 >>一回目の呼び出し文は無視、二回目の呼び出し文でカウントされる
というように、カウントを取ることができます。
もっとも、あらかじめ断っておきますが、 これはあくまでも抜け道的な方法です。
根本的な解決は、CGIとJavaScriptの構造上不可能です。
Speed Counter 作成履歴
旧名Adra's Counterとして・・
2000年
11月 ver1.0
12月 ver1.1〜ver1.3 データ呼び出し方法変更、ダミー画像表示形式に
2001年
2月 ver1.31 リンク先修正
3月 ver2.0 flockを、ロック機構として採用
7月 ver3.0 リロード防止機能追加、アクセス解析追加、数値減少カウント機能追加
8月 ver3.1 レインボーカラー機能追加
10月 Speed counter ver1.0 配布開始
11月 ver1.01 自動ログ通知のバグ修正・IP取得をより厳密に。
Links: 竜の情報館 > CGI配布
「竜の情報館」 Copyright(C) ADRA 2000-2002. All Rights Reserved. 連絡はこちらから