トップページへ サイトマップへ メールを送る
CGI/Perl
 
SSI/Perl
 
PHP

 
 

SSI(Server Side Includes)から呼び出すタイプのアクセスカウンターです。
数字画像によるカウンター表示、ファイルロックによるカウントファイルの保護の機能をもつ、標準的な仕様となっています。

なおサーバ側のSSI機能を使用しているため、ご契約のプロバイダがSSIを提供していない場合には、残念ながらご利用になることはできません。SSIのご利用に関して、詳しくはご契約のプロバイダ提供の情報をご参照下さい。


このページ下部のDOWNLOADからrcounts.lzhという書庫ファイルをダウンロードして、適当なアーカイバで解凍して下さい。このファイルを解凍すると、以下のようなファイルが現れます。

count.pl Perlスクリプト本体
count.dat アクセスカウント数を保存するカウントファイル
digit/0.png〜9.png 数字画像のサンプル

この中のcount.plをメモ帳などの適当なエディタで開き、一部を環境に合わせて書き換えます。 まず一行目の「#! /usr/local/bin/perl」の部分を、ご契約のプロバイダのPerlのパスに書き換えて下さい。Perlのパスは、通常プロバイダの方で情報を提供していますので、そちらをご参照下さい。
次に「ユーザー設定」と書かれた行の下は以下のようになっていますが、この一部を環境に合わせて書き換えます。書き換えは「=」の右側の「'」に囲まれた部分、または数字そのものに対して行います。

$_IMGPATH = './digit/'; # 数字画像ファイルのディレクトリへのパス
$_FNAME = './count.dat'; # カウントファイルのパス
$_FIGURE = 4; # 表示する桁数
$_EXT = '.png'; # 画像ファイルの拡張子

カウントファイルの設定
カウントファイルのファイル名を変更したい場合は、$_FNAMEの右辺を新しいカウントファイルのパスに書き換えます。
ファイル名を変更していない場合でも、サーバによっては(カレントディレクトリの相違により)動作しない場合があります。この場合は、カウントファイルへの絶対パスに書き換えてください。
例えばサーバにログインしたときのパスが/home/ACCOUNTであって、ルートにcountというディレクトリを作成してその中に設置した場合では、絶対パスは/home/ACCOUNT/public_html/count/count.datとなります。

桁数の設定
表示するアクセスカウンターの最小桁数を設定するには、$_FIGUREの右辺の数字を書き換えます。初期状態では4桁で表示されます。
なおアクセスカウンターの桁があふれた場合には、設定した桁以上が表示されますが、特にカウントファイルの内容が破壊されたりすることはありません。

数字画像ファイルの設定
サンプルの数字画像を自作のものに置き換えるなど、使用する数字の画像フォーマットがPNG以外の場合、$_EXTの右辺の.pngの部分を使用する画像ファイルの拡張子(例えば.gif.jpgなど)に書き換えてください。なお用意する画像ファイルは0.???〜9.???(拡張子は任意)というファイル名である必要があります。
また画像ファイルのディレクトリを変更したい場合には$_IMGPATHの右辺を画像ファイルを置いたディレクトリへのパスに書き換えてください。これはSSIの呼び出し元からみた画像ファイルのディレクトリの相対パス、あるいは完全なURLで指定する必要があります。


次にHTMLファイルに、カウンタスクリプトの呼び出しを記述します。
これはアクセスカウンターを埋め込みたいHTMLファイルの箇所に、以下のようなタグを書き込みます。ここで二重引用符に囲まれた部分は、SSIの呼び出し元からみたカウンタスクリプト本体への相対パスです。この部分は環境に合わせて書き換えて下さい。

<!--#exec cmd="./count/count.pl"-->

なおサーバにこのHTMLファイルが要求されると、送信時にこのタグがカウンタに書き換わっているため、ページを見ている人はこのタグを見ることはありません。
このSSI呼び出しのタグを<font>や<b>で囲むようにすれば、アクセスカウンターの装飾をすることもできます。


最期にスクリプトファイルなどを、通常のHTMLファイルと同様にサーバにアップロードします。
このときcount.plに設定した通りの構成になるように注意してください。

パーミッションの設定
スクリプトファイルはサーバにアップロードした後、パーミッションというものを変更して、ファイルに実行許可を与える必要があります。パーミッションはファイルおよびディレクトリごとに3桁の(8進数)値で設定します。
パーミッションの変更方法には幾つか方法がありますが、パーミッションの変更をサポートしているFTPクライアントを使うと簡単に変更することができます。パーミッションの変更が可能なFTPクライアントソフトウェアには、例えばRootFTPなどがあります。
他にTelnetアクセスを許可しているプロバイダでは、Telnetでログインしてchmodコマンドでパーミッションを変更する方法もあります。
以下の設置例を参考にして、パーミッションの変更を行ってください。
/public_html/
    |
    |---- index.shtml(755)  : SSIの呼び出し元
    |
    |---- /count/(755)
    |        |
    |        |---- count.pl(755)
    |        |
    |        |---- count.dat(666)
    |
    |---- /digit/
    |        |---- 0.png〜9.png


ライセンスは GPL(GNU General Public License) に準じます。著作権表示を除去しないこと、ライセンスを変更しないこと及びソースファイルを公開することを条件に改変・再配布・商利用が許諾されます。
ライセンス条件について詳しくはこちらへ。


R-COUNTER [SSI]