|
◆はじめに
ファイルのダウンロード数やページのアクセス数をカウントし、週間ランキングと累積ランキングとして集計・表示します。CGI初心者でも比較的簡単に設置できます。
サンプルはこちらです。
◆仕様
- ファイルのダウンロード数をカウントする機能と、ページのアクセス数をカウントする機能があり、二つの機能を併用することも可能。
- CGIだけで動作する為、プロバイダーがSSIの使用を許可している必要がない。
- 週間ランキングと累積ランキングを集計・表示する。
- ランキング表示は、件数と割合、さらに棒グラフで分かり易く表示される。
- 週間ランキングについては、前週からの順位の変動も表示する。
- 同一人物(同じIPアドレス)による同じファイル(またはページ)の連続ダウンロードは、重複してカウントしない。ただし、その場合もダウンロードは正常に行われる。
- タイトルや背景色、文字色、壁紙などを簡単に設定できる。
- ダウンロードファイルのURLと名前などは、HTMLタグ内で指定する。
◆必要なファイル
下の「ダウンロード」ボタンをクリックすると必要なファイルをダウンロードすることができます。
ダウンロードした圧縮ファイル(perldlrank.lzh)を解凍すると、以下のファイルが作成されます。
| ファイル |
内容 |
パーミッション |
| perldlrank.cgi |
ランキング表示用プログラム本体 |
755 |
| perldnload.cgi |
ダウンロード数記録用プログラム本体 |
755 |
| dllog.dat |
ダウンロード数記録ファイル |
666 |
| graph.gif |
棒グラフ用の画像ファイル |
644 |
|
◆ディレクトリ構成の例
(ホームディレクトリ)
|
|----cgi-bin(ディレクトリ)
|
|----dlrank(ディレクトリ)
|
|
|----lock(ディレクトリ) ※パーミッションを777に設定する
|
|----perldlrank.cgi
|
|----perldnload.cgi
|
|----dllog.dat
|
|----graph.gif
◆設定
- 「perldlrank.cgi」と「perldnload.cgi」は、テキストエディタで必要な箇所を編集します。Windowsならメモ帳(Notepad.exe)、Macintoshならシンプルテキストを使うと良いでしょう。編集が必要な箇所は、ファイルの中に書いています。
- 「dllog.dat」は、一切手を加えないで下さい。
- 「graph.gif」以外のファイルを全てアスキー(テキスト)モードでアップロードして下さい。
- 「graph.gif」をバイナリモードでアップロードして下さい。
- dlrankディレクトリ内にlockディレクトリを作成し、パーミッションを777に設定して下さい。
- 上記「必要なファイル」の表を参考にして、各ファイルのパーミッションを設定して下さい。
- ファイルのダウンロード数をカウントする場合は、ダウンロードファイルへのリンクは下記のように記述して下さい。
<A HREF="http://〜〜〜/perldnload.cgi?dlfile=ファイルのURL&dlname=名前&webpage=参考ページのURL">ダウンロードはここ</A>
・「http://〜〜〜/perldnload.cgi」の部分は、perldnload.cgiのURLを指定します。 ・「ファイルのURL」の部分は、ダウンロードするファイルのファイル名を指定します。 ・「名前」の部分は、ファイルの名前(作品名など)を指定します(日本語も可)。 ・ダウンロードファイルの紹介ページなどがある場合は、「参考ページのURL」の部分でURLを指定します。(ここで指定したURLが、ランキング一覧からのリンク先になります。)必要ない場合は、「&webpage=参考ページのURL」の部分は削除して下さい。
- ページのアクセス数をカウントする場合は、そのページのHTMLファイル内に下記のような一行を記述して下さい。
<IMG SRC="http://〜〜〜/perldnload.cgi?dlfile=ページのURL&dlname=名前&webpage=*" WIDTH="1" HEIGHT="1">
・「http://〜〜〜/perldnload.cgi」の部分は、perldnload.cgiのURLを指定します。 ・「ページのURL」の部分は、そのページのURLを指定します。 ・「名前」の部分は、そのページの題名を指定します(日本語も可)。
- 以上全ての設定が完了したら、いきなりWWWでアクセスして実行する前に、必ずサーバーのシェル上で動作確認をして下さい。シェルコマンドについては、各自で勉強して下さい。
- 改造・非改造を問わず、当サイトのスクリプトをご利用になった上で生じたいかなる損害に対しても一切の責任を負いかねます。あらかじめご了承下さい。
|