@niftyLaCoocan用アクセスカウンター(LaCounter.cgi)

抄録

@niftyの新しいサービスラクーカン(lacoocan)では、各自で適当なアクセスカウンターを用意するなり、無料のアクセスカウンターサービスを利用することを想定されているのか、アクセスカウンターが用意されていません。

そこで、ラクーカンに用意されているImageMagickの自習をかねてImageMagickを利用した簡単なアクセスカウンターを作ってみました。アクセスカウンターの世界ではあまりに有名なWWW Homepage Access Counter and Clockの機能に近いのではないかと思います。(そもそも、WWW Homepage Access Counter and ClockはC言語で書かれているためLaCoocanでは使えない。)

このアクセスカウンターは、画像ファイルとともにサーバーに転送するだけで動作させることができると同時に、設定ファイルやタグで指定することで画像の処理や動作を任意に指定することができます。

---なお、このマニュアルは印刷して利用できます。印刷はページ設定で[ヘッダ・フッターなし]および[ページ印刷なし]で、左右の余白を5mm、上下の余白を10mm程度にして印刷してください。---

目次

  1. 目次- - - - - - - - - - 1
  2. 1:特徴- - - - - - - - - - 2
  3. 2:簡単な使い方- - - - - - - - - - 3
    1. 2-1:必要なファイルの入手- - - - - - - - - - 3
    2. 2-2:転送とパーミッション- - - - - - - - - - 3
    3. 2-3:セットアップ- - - - - - - - - - 4
    4. 2-4:タグの書き方- - - - - - - - - - 4
    5. 2-5:他の画像の使い方- - - - - - - - - - 4
    6. 2-6:別法(PATH_INFを使う)- - - - - - - - - - 4
    7. 2-7:より高度な使い方- - - - - - - - - - 4
  4. 3:高度な使い方- - - - - - - - - - 5
    1. 3-1インストールと運用- - - - - - - - - - 5
    2. 3-2:ファイルの入手と解凍方法- - - - - - - - - - 5
    3. 3-3:アップロードとパーミッション- - - - - - - - - - 6
    4. 3-4:最初の起動と作成されるファイル- - - - - - - - - 6
    5. 3-5:タグでの設定- - - - - - - - - - 7
    6. 3-6:PATH_INFOでの指定方法- - - - - - - - - - 13
  5. 4:それぞれのファイルについての説明- - - - - - - - - -14
    1. 4-1:設定ファイル- - - - - - - - - -14
    2. 4-2:カウントファイル- - - - - - - - - -19
    3. 4-3:ログファイル- - - - - - - - - -19
    4. 4-4:画像ファイル- - - - - - - - - -20
  6. A:付録- - - - - - - - - -22
    1. A-1:設定ファイル- - - - - - - - - -22
    2. A-2:フローチャート- - - - - - - - - -28
    3. A-3:リンクと書籍- - - - - - - - - -30
    4. A-4:文書情報- - - - - - - - - -31
      1. 改訂履歴- - - - - - - - - -31
      2. ライセンス- - - - - - - - -31
      3. 文書規格- - - - - - - - - -31
      4. 問合せ- - - - - - - - - - -31

--1--

1:特徴

リンク先のスクリーンショット

一部は有償版のみの機能です。

簡単に設置でき、高度な利用もできる。
画像とともにサーバーに転送しパーミッションを変更するだけで、すぐ使えるものでありながら、高度な設定も可能。
複数のカウントファイルを利用できる。
ページごとにカウントするなど、ひとつのCGIで複数のカウンターを動作させることが出来ます。
画像連結
文字幅の異なる数字画像も連結して、ひとつの画像として出力します。しかも一つ一つの画像を回転させたり全体を回転させることもできる。
任意の画像を利用できる。
Digit Mania【右図】にあるような任意の画像や自作の画像を利用できます。
カウンター以外の画像を表示できる。
ロゴや挿絵、背景画像を表示させて、訪問者数のカウントやアクセスログの収集に使える。
リロード対策
CookieとIPアドレスを利用してリロードによる重複カウントを防止しています。IPアドレスによるチェックは有償版のみの機能。
集計方法が選択可能
累積、今年、今月、今週、当日のカウントを表示できます。さらに、時刻表示・カレンダー・カウントダウンにも対応
時刻やカレンダー用の画像があれば、アクセス時の時刻やカレンダー表示、さらにある日時やカウント数までのカウントダウンもできる。
色やデザインの変更に対応
設定ファイルだけでなく、呼び出しのタグでも画像・背景色・背景の透明化・枠のサイズや色などの高度な指定が可能にしました。そのためページごとにカウンターのデザインを変えることもできます。
QUERY_STRINGSに加えてPATH_INFOでも指定できる。
アクセスログ
Web開発に役立つ最低限の情報(訪問ブラウザ、訪問時間など)を記録させることができます。
フリー(自由)です。フリーソフトウェアの定義 - GNU プロジェクト - フリーソフトウェア財団 (FSF)
このCGIは、GNU General Public License[邦訳]の元で配布します。
すなわち、利用するのは無論、(有償/無償を問わず)再配布・改変・誰かに設置してあげるのは自由ですが、このライセンスを変更することはできません。ベータ版は再配布禁止
このプログラムを改変(改良)して再配布する場合、作者にもそれをお送りください。
詳しくは、このページの末尾、およびGNU General Public License[邦訳]を読んでください。
無償版と有償版があります。
機能を集約して初心者にも簡単に使用できる無償配布版と高度な利用ができる有償(配布)版があります。ベータ版(テスト用)は無料で利用できますが動作は不安定で時々カウンタがリセットされることがあります。。
このページの説明は有償版について書かれています。無償版の説明はプチカウンターマニュアルをご覧ください。

--2--

2:簡単な使い方

配布されているファイル(CGI本体,画像)を指定された場所に転送し、パーミッションを設定しただけで使えます。

2-1:必要なファイルの入手

配布されているZIPファイルを解凍すると、圧縮されたCGI本体とテスト用のPutiCounter、および画像ファイルを入れたフォルダーが現れます。

CGI本体:
  LaCounter.cgi(圧縮ファイルLaCounter.zipとして提供されます。)
  PuitCounter.cgi
      (テスト用のカウンターです。無償配布されているPutiCounterとは異なります。)
カウンター用画像:
  KATT154/   <---  フォルダ
     KATT154.GIF            3KATT154.GIF            7KATT154.GIF
     0KATT154.GIF           4KATT154.GIF            8KATT154.GIF
     1KATT154.GIF           5KATT154.GIF            9KATT154.GIF
     2KATT154.GIF           6KATT154.GIF

本体LaCounter.cgiは、パスワードを用いて圧縮ファイル(LaCounter.zip)をもう一度解凍します。その前に同時に提供されるPutiCounter.cgiを実行して動作することを必ず確認してください。なお、有償版と同時に配布されているPutiCounter.cgiは無償版のそれとは異なり、有償版をインストールするとカウンターファイルはそのまま引き継ぐことができます。

2-2:転送とパーミッション

下図のようにカウンタープログラム(LaCaunter.cgi)は[/homepage]内に[/cgi-bin]ディレクトリを作成してテキスト(ASCII)モードで、画像フォルダーは、[/homepage]内に[/images/counterImages]というディレクトリを作成してバイナリで、サーバーに転送する。

それぞれのパーミッションは下図のように指定しておく。

  
[ftp.**.coocan.jp]
   |-- [yourDomain]
         |-- bin/
         |-- dev/
         |-- etc/
         |-- homepage/
         |     |-- cgi-bin/                  705
         |     |     |-- LaCounter.cgi       700
         |     |
         |     |-- images/
         |           |-- counterImages/
         |                 |-- KATT154/            700
         |                       |-- KATT154.GIF   600
         |                       |-- 0KATT154.GIF  600
         |                       |-- 1KATT154.GIF  600
         |                       |-- ・・・・・
         |                       |-- 6KATT154.GIF  600
         |                       |-- 7KATT154.GIF  600
         |                       |-- 8KATT154.GIF  600
         |                       |-- 9KATT154.GIF  600
         |
         |-- lib/
         |-- tmp/
         |-- usr/
         

--3--

2-3:セットアップ

パーミッションを設定したら、CGIにブラウザでアクセスすると自動的にサーバーに必要なファイルが作成されます。[LaCooocanサーバー名]はあなた自身のサーバー名です。

http://[LaCoocanサーバー]/cgi-bin/LaCounter.cgi

セットアップが完了すると、完了画面が表示されますからリロード(再読み込み)をしてカウンターが表示されることを確認してください。エラーが表示された場合は、指示に従ってください。

2-4:タグの書き方

カウンターを貼り付けるHTMLのソース内に次のタグを記入する。

 <img src="http://[LaCoocanサーバー]/cgi-bin/LaCounter.cgi">

動作実例

2-5:他の画像の使い方

画像についての詳しい説明はこのマニュアルの7ページの[画像の使い方]にあります。

使用したい画像を、サーバーにフォルダーごと転送し、タグで指定する。たとえばDigit Maniaにある[Blue-Red Punch]という画像を利用する場合について説明すると。

  1. Digit Maniaに行き、[Places To Go]の項目にある[Style Pages : Designed for browsing.]の[Fancy]からファンシーな画像のページに行く
  2. [Blue-Red Punch]という画像の下にある[PKZipped]を右クリックして適当な場所に保存する。
  3. 保存した圧縮ファイルを適当な解凍ツールで解凍する。
  4. [brpunch]というフォルダ(とその中の数字画像)が現れますから、フォルダーごとサーバーの[/homepage/images/counterImages]にバイナリ転送する。
  5. タグに下記のように記述する。
 <img src="http://[LaCoocanサーバー]/cgi-bin/LaCounter.cgi?IMG=FLUBBER">

FLUBBER

2-6:別法(PATH_INFを使う)

このCGIはPATH_INFOで画像と出力フォーマットを指定することができます。

PATH_INFOで指定できるのは、カウントファイルと画像の種類と出力画像のフォーマットの3つです。

 <img src="http://[LaCoocanサーバー]/cgi-bin/LaCounter.cgi/brpunch.gif">

brpunch.gif

これは、[画像の保存先]/brpunch/の画像をGIFで出力させる書き方です。

2-7:より高度な使い方

このCGIは設定や<img>タグ内のアトリビュート(属性)の記述、またはPATH_INFOで、高度なあるいは細かい設定ができます。詳しい説明は次の高度な使い方以降をご覧ください。

--4--

3:高度な使い方

このCGIは、設定ファイルやタグの記述で高度な応用もできます。以下のページでインストールから使用方法まで詳しく説明します。なお、ここに書かれている機能のいくつかは有償配布版のみの機能もあります。

3-1:インストールと運用

このカウンターの設置のためには、CGI本体と使用する画像ファイルを変更せずサーバーに転送し、CGI本体に実行権限を与えてブラウザから呼び出すだけで動作する。

CGIの最初の起動時に設定ファイルが作成されるので必要ならテキストエディタで書き換える。

CGIを起動すると、いくつかのディレクトリやファイルがない場合には自動的に作られます。

3-2:ファイルの入手と解凍方法

ファイルのダウンロード

このCGIに必要なファイルを入手する。必要なファイルは、ダウンロードのページにあります。ファイルはZIPで圧縮してあります。リンクを右クリック(Windows)して保存してください。

なお、この有償版は、いったん@niftyのアット・ペイ:トップで購入の手続きをしてください。

解凍方法

いずれもZIPで圧縮されたファイルとして提供されます。ダウンロードしたファイルを適当な場所に保存してください。

解凍ソフトはOSに付属のものか、Vector窓の杜などで適当なものを探して利用すると良いでしょう。

LaCounter(有償版)に含まれるファイル

CGI本体[LaCounter.cgi]
このCGIのスクリプト。テキスト(ASCII)モードで転送し、所有者に実行権限を与える。(700)
画像フォルダーと画像
数字画像。時刻表示を行う場合は[:,pm,am]の画像も用意しサーバーにバイナリ転送。(600)
KATT154
KATT154の画像見本
背景が黒のカウンター用画像
ABACUSJN
KATT154の画像見本
日本式の算盤

PCounter(無償版)に含まれるファイル

CGI本体[Counter.cgi]
このCGIのスクリプト。テキスト(ASCII)モードで転送し、所有者に実行権限を与える。(700)
画像フォルダーと画像(KATT154)
KATT154の画像見本
背景が黒のカウンター用画像

--5--

3-3:アップロードとパーミッション

下図のようにカウンタープログラム(LaCaunter.cgi)は[/homepage]内に[/cgi-bin]ディレクトリを作成してテキスト(ASCII)モードで、画像フォルダーは、[/homepage]内に[/images/counterImages]というディレクトリを作成してバイナリで、サーバーに転送する。

  
[ftp.**.coocan.jp]
   |-- [yourDomain]
         |-- bin/
         |-- dev/
         |-- etc/
         |-- homepage/
         |     |-- cgi-bin/                  705
         |     |     |-- LaCounter.cgi       700
         |     |
         |     |-- images/
         |           |-- counterImages/
         |                 |-- KATT154/            700(707)
         |                       |-- KATT154.GIF   600(604)
         |                       |-- 0KATT154.GIF  600(604)
         |                       |-- 1KATT154.GIF  600(604)
         |                       |-- 2KATT154.GIF  600(604)
         |                       |-- 3KATT154.GIF  600(604)
         |                       |-- 4KATT154.GIF  600(604)
         |                       |-- 5KATT154.GIF  600(604)
         |                       |-- 6KATT154.GIF  600(604)
         |                       |-- 7KATT154.GIF  600(604)
         |                       |-- 8KATT154.GIF  600(604)
         |                       |-- 9KATT154.GIF  600(604)
         |       
         |-- lib/              (通常のブラウザでのアクセスでも画像への
         |-- tmp/
         |-- usr/               アクセスを可能にするときは(カッコ)内の値にする。
         

画像の保存先を変更するには?

このディレクトリがすでに使用されているなどの理由で画像の保存先を変更する場合は、画像の保存先は起動後に変更できます。設定ファイルの変更方法画像の保存先を変更するにはを参考にしてください。

3-4:最初の起動と作成されるファイル

このCGIに実行権限(LaCoocanでは700)を与えて、ブラウザでアクセスすると下記のディレクトリとファイルが作成される。

  
[ftp.**.coocan.jp]
   |-- [yourDomain]
         |-- bin/
         |-- dev/
         |-- etc/
         |-- homepage/
         |     |-- cgi-bin/                  705
         |     |     |-- LaCounter.cgi       700
         |     |     |-- LaCounter.conf      700(設定ファイル)
         |     |
         |     |-- log/
         |           |-- LaCounter
         |                 |-- Count1.txt(カウントファイル)
         |                 |-- access1.csv(ログファイル)
         |
         |-- lib/
         |-- tmp/
         |     |-- LaCounter/
         |
         |-- usr/
         

--6--

3-5:タグでの設定

ページにカウンターを埋め込むタグ(<img src=****>)内に、コマンドを書くことで、次で説明する設定ファイルとは別の動作を上書きして指定することができる。

タグの記述方法

必ず半角英数字のみで指定すること。URIで使えない文字([^a-zA-Z0-9_.!~*'()-])はURIエスケープすること。たとえば / は %2F に、#は %23 となります。

下記に実際の設定例を示しますが、これらは同時に一括して指定できます。複数の項目を指定するときは&amp;でつなぐこと。

カウント動作の設定

使用形態 [counter|clock12|clock24|calendar](デフォルトはカウンター)
<img src="[CGIのURL]?Ty=clock12">
サンプル画像:clock12
<img src="[CGIのURL]?Ty=calendar">
サンプル画像:calendar
<img src="[CGIのURL]?Ty=countdown">
サンプル画像:countdown
何も指定しないかcounterと記述するとカウンターとして動作します。
clock/clock12:時計、clock24:24時間表記の時計、カレンダー
countdownで特定のカウント数、または日時に対してカウントダウンを行う。詳しくは特定カウント数の指定などを参照。
カウント対象(Target)
下は今月の訪問者数を表示する。
<img src="[CGIのURL]?Ta=mo">
訪問者数: 今月は 今月の  今週は 今週の
            今日は 今日の 今年は 今年の訪問者
            トータルでは トータルでは
[today(td)/今日 | weekday(wd:w)/今週 | month(mo)/今月 | year(yr)/今年 | total(to)/累積]
省略形が使える。wが含まれていれば[週]→dが含まれていれば[today]→mが含まれていれば[month]→yが含まれていれば[year]とみなし→それ以外はトータルと判断される。

--7--

カウント数を保存するファイル名(CounterFile)
<img src="[CGIのURL]?CF=2">
2
カウントされた値を記録するファイルを区別すための数字です。No.1は、CGIを最初に起動したときにサーバーの/homepage/logに作成されます。ここの記述で他の場所に置くこともできます。カウントファイルの自動作成が許可されていると、この数字を変更するとカウントファイルは作成されます。
カウントダウンの目標
<img src="[CGIのURL]?Epoc=0000&Ty=countdown">
サンプル画像:0000
ここで指定した文字列が後方マッチすると訪問者にクッキーを送信しキリ番をゲットしたことが記録されます。)
上記の例だと万に達する毎にマッチします。
特定日(Event)
<img src="[CGIのURL]?Event=2007-01-01&Ty=countdownDHM">
サンプル画像:countdownDHM
日時のカウントダウンをするときの目標とされる日時の指定
TyがcountdownD〜DHMSのときはここに書かれた数字を次のように判断
数字4桁 西暦とみなし、目標をその年の一月一日零時零分零秒とみなす。
数字4桁-数字2桁 西暦と月とみなし、その月の一日零時零分零秒とみなす。
数字4桁-数字2桁-数字2桁は西暦年月日の零時零分零秒とみなす。
数字4桁-数字2桁-数字2桁-数字2桁は、西暦年月日時間の零分零秒とみなす。
数字4桁-数字2桁-数字2桁-数字2桁:数字2桁は、西暦年月日時分の零秒とみなす。
数字4桁-数字2桁-数字2桁-数字2桁:数字2桁:2桁は、西暦年月日時分秒とみなす。
[\d{4}|\d{4}-\d{2}|\d{4}-\d{2}||\d{4}-\d{2}-\d{2}|\d{4}-\d{2}-\d{2}-\d{2}|\d{4}-\d{2}-\d{2}-\d{2}-\d{2}}
特定カウント数(Just)
<img src="[CGIのURL]?Just=2896&Ty=countdown">
サンプル画像:2896まであと、countdown1896
特定のカウント数のみを対象とする場合はこちらを指定する。
[数字]
最高桁数(Max)
<img src="[CGIのURL]?Max=4">
サンプル画像:Max2
数字の前に0を置く最大桁数、0のときは無制限で常時先頭は0
[数字]

--8--

最低桁数(Min)
<img src="[CGIのURL]?Min=8">
サンプル画像:Min4
桁数が少ないときの桁数、これ以下の値の場合前方が0で埋められる。
[0...]

画像の種類と編集

カウンターで使用する画像の種類を指定したり、画像の編集を行う。

枠付け前
カウンターで使用する画像(IMaGe)
<img src="[CGIのURL]?IMG=BANKGOT">
IMG_BANKGOT
デフォルト(指定しない)で利用するカウンター用のイメージの入ったディレクトリ名。必ずサーバーに存在する画像を入れてあるディレクトリ名を正確に記述する。
大文字小文字やディレクトリ名の末尾が多少異なっても画像を特定できますが、それに期待せずできるだけ正確に記述すること。
一文字の幅:ひとつの文字の幅。0のときは画像自体の幅(DigiWidth)
<img src="[CGIのURL]?DW=60">
サンプル画像:DW_60
数字画像が大きい場合は必ず指定する。ここで指定される幅はゼロ数字画像の幅(画像全体の幅ではない)を示す。
プロポーショナルな画像(数字によって幅が異なる画像)も、同じ比率で伸縮される。
拡大されるときは"ぼかしフィルター"、縮小されるときは"シャープフィルター"が適用される。
それぞれの数字は、
0.1、1.2など小数点を含む数値の場合は縮小・拡大率を示す。2倍にする場合も必ず2.0と指定すること
16などの整数値では文字[0]の横幅(ピクセル数)を示す。
[\d+|\d+.\d+]
画像の並べ方(Tile)
<img src="[CGIのURL]?Tile=1&IMG=japan" style="float:right;">
Tile_1
画像を並べる方向。デフォルト[0]では横方向で左から右へ敷き詰める。[1]にすると縦に敷き詰める。
[右(0)|下(1)]
背景の透明化(Transparent)
<img src="[CGIのURL]?Tr=1&Repeat=0">
サンプル画像:Tr_1(サンプルは枠なしに指定してある。)
透明化:背景を透明にしない(0)か、透明にする(1)を指定する。
画像によっては透明化できない場合がある。
[0|1]

--9--

背景色(BackColor)
<img src="[CGIのURL]?BC=%23ff0000">
BC_%23ff0000
素材画像の背景色が指定されている場合、背景を透明にするかしないか。
画像によっては機能しない場合がある。
[色名]
透明色(TransparentColor)
<img src="[CGIのURL]?TrC=%23ffff00">
TrC_%23ffff00
透明色:背景を透明にするときの色
指定しない場合は画像の左上のピクセルの色を使用する。
[色名]
透明色:背景を透明にするときの色
<img src="[CGIのURL]?TransparentColor=%23000000">
サンプル画像
背景を透明に指定したときはその色を指定する。(デフォルトでは黒)
画像の回転(Rotate)
<img src="[CGIのUTL]?Ro=30">
Ro_30
一つ一つの画像の連結前の回転(0|R|L|A|0〜360)
[R]で右に90°[L]で左に90°。0<数値<360の場合はその角度ver右回転。
[0]または指定がないと回転しない。この場合に余白が生じた場合は「背景色」
で指定した色で塗りつぶされる。
[0-360]
個別の画像の鏡像(FLip)
<img src="[CGIのUTL]?FL=V">
FL_V
<img src="[CGIのUTL]?FL=A">
FL_A
連結前の画像の反転を行うか否か
上下二反転する場合(V)、左右に反転する場合(A)
[0|A|V]

--10--

画像連結後の処理
枠付け前の回転(Spin)
<img src="[CGIのUTL]?Spin=30">
Spin_30
画像を連結したのちにまとめて回転する場合
[数値]
画像の枠づけ前の追加処理
<img src="[CGIのUTL]?PreManipulate=1">
画像をさらに編集する場合その処理を記述したスクリプトに従って処理できる。
画像の前処理。枠をつける前の画像の特殊処理[しない(0)|する(1)]
[0|1]
枠の設定
枠のタイプ(FrameType)
<img src="[CGIのUTL]?FTy=frame">
FTy_frame
<img src="[CGIのUTL]?FTy=border">
FTy_border
[border|frame]
枠(Frame/Border共通)の幅
<img src="[CGIのUTL]?BW=20">
BW=20
枠の幅をピクセルする。
[数値]ひとつで縦横とも同じ幅、[数値,数値]で、横|縦の幅を個別に指定可能
[数値(,数値)]
外枠の幅
枠がFrameのときの最も外の枠の幅
[数値]
<img src="[CGIのUTL]?FTy=frame&FOW=8&BW=10">
FTy_frame&FOW_8&BW=10

--11--

内枠の幅
枠の種類がFrameのときの内枠の幅
[数値]
<img src="[CGIのUTL]?FTy=frame&FIW=8&BW=10">
FTy_frame&FIW_8&BW=10
枠の色
<img src="[CGIのUTL]?FC=%23008888">
FC_%23008888
枠(Frame/Border共通)の色
色名はimageMagickの認識できる形式で指定
URLで指定するときは必ずURLエンコードして記述する
たとえば、#f00000 は、%23f00000 とすること
[色名]
画像と枠の余白
<img src="[CGIのUTL]?Padding=20">
Padding_20
[数値]ひとつで縦横とも同じ幅、[数値,数値]で、横|縦の幅を個別に指定可能
[数値(,数値)]
枠の数
<img src="[CGIのUTL]?Repeat=3">
Repeat_3
枠の数、[0]だと枠なし、[1]はデフォルト
[数字]
枠付け後の処理
枠付け後の画像の反転(Flip)
画像をフリップ(鏡像)に[しないは0、縦方向でV、横方向でA
[0|V|A]
<img src="[CGIのUTL]?Fl=A">
Fl_A

--12--

合成画像の回転(ROtation)とその背景色(ROtationColor)
<img src="[CGIのUTL]?RO=30&ROC=rgb(255,255,180)">
RO_30&ROC_rgb(255,255,180)
[R]で右に90°[L]で左に90°。0<数値<360の場合はその角度ver右回転。
[0]または指定がないと回転しない。この場合に余白が生じた場合は「背景色(ROC)」
で指定した色で塗りつぶされる。余白が生じる回転のときは必ず背景色を指定する。
[0-360]
画像の後処理。枠をつけた後での画像の特殊処理
<img src="[CGIのUTL]?PostManipulate=">
出力画像の種類(ImageFormat)
<img src="[CGIのUTL]?IF=jpg">
サンプル画像:IF_jpg
デフォルトではPNG。PNG推奨ですが、古いブラウザではPNGが表示できない場合があります。
[png|gif|jpg]

複数の設定を一括して行う。

これらの設定は、一括して設定できます。指定の優先順位は、次の3-6:PATH_INFOでの設定3-5:タグでの設定設定ファイルでの設定の順番です。また、ひとつの設定方法で二重に設定した場合は後での設定が優先されます。

複数の指定を組み合わせる。
<img src="[CGIのURL]?IMG=BANKGOT&DW=40&IF=png&IMG=57CHEVY&FC=%23008888">
サンプル画像:IMG_BANKGOT
この例の場合、使用する画像に[BANKGOT]と[57CHEVY]が指定されていますが、後で設定した[57CHEVY]が適用されています。

3-6:PATH_INFOでの設定

使用する画像の種類と画像の形式、およびカウンタファイルについてはPATH_INFOでも指定が可能。

PATH_INFOの記述方法

PATH_INFOとは、CGIファイル名の後ろに続く文字列(?があれば、?まで)で、/に続いて指定する値を/で区切って並べる。PATH_INFOでの設定は、3-5:タグでの設定設定ファイルでの設定を上書きします。

PATH_INFO
<img src="[CGIのURL]/wpkneo.png">
画像の種類(wpkneo)と画像のフォーマット(png)を指定している。
サンプル画像:wpkneo
<img src="[CGIのURL]/2/apple.png?Repeat=0">
サンプル画像:apple
この例では画像の種類やフォーマットに加えてカウントファイル(2)を指定している。また?以降で枠なしも指定している。

--13--

4:それぞれのファイルについての説明

4-1:設定ファイル

ファイルの変更方法

このCGIは起動時に設定ファイルを探し、それがない場合は自動的に作成されます。設定ファイルをサーバーから削除すると次の起動時に再生する。

なお、設定ファイルに記述する内容のうち、初期状態の内容と同じものは記入する必要がないので、変更する部分のみ記述しても良い。たとえば次のように変更したい項目だけ記述したので良い。

Tr              :    month
IMG             :    KATT154
FC              :    #00ee99
このファイルの文字コードは日本語EUC-JPです。
日本語EUCが扱えるテキストエディタを使って編集すること。たとえばEmEditorなどが良いでしょう。EmEditorには、ProfessionalとStandardの2種類あります。30日間は無料で体験版として利用できます。(購入後登録キーを入力して製品版として継続して使用できる。)
また無料で使えるEmEditor Freeもあります。
これ以外にもVector窓の杜などに各種あります。
編集後、必ずテキスト(ASCII)モードでサーバーに転送
設定ファイルは書き直したら、サーバーにテキストモードで転送する。FTPソフトの設定で拡張子が[.conf]のものはテキスト(ASCII)モードで転送するようにしておくと良い。
コマンド行は、その行の先頭から[要素 : プロパティ]の1行。
コマンド行は前方に空白文字を置けない。
要素とプロパティの区切りは[:]。
[:]の前後、末尾には空白文字があってよい。
項目名は変更不可
項目名は決して変更しない。なお先頭が大文字の項目はタグでも上書き可能
色名の書式はわかりやすいものを
#000〜#fffffffffないし、rgb(0〜255,0〜255,0〜255)、及び、色名(http://imagemagick.org/script/color.php#table)が使用できる。

カウンター機能

これらの項目は、カウンターの動作そのものを設定します。

使用形態(Type)
カウンターの用途を記述する。とりうる値は [counter | clock12 | clock24 | calendar | countdownDHMS | countdownDHM | cowntdownDH | countdownD](デフォルトはカウンター)
Ty                :    counter
何も指定しないかcounterと記述するとカウンターとして動作します。
clock/clock12:時計、clock24:24時間表記の時計、カレンダーを指定する。
countdownは特定カウント数へのカウントダウンを行う。
countdownDで始まる場合は特定の日や時刻までの日数や時間をカウントダウンする。
DHMS(Day.Hour,Minutes,Second)はひにちと秒までの時間、DHMは日にちと分まで、DHは同じく時間まで、Dは日にちのみ。Dを除き日にちがゼロのときは日にちの表記はしない。

--14--

カウンターに表示するカウント対象(Target)
[today(今日)|week(今週)|month(今月)|year(今年)|total(累積)]
Ta                 :   total
通常はtotalにしておき、それ以外の表示が必要なときはタグで指定するほうが良いでしょう。
カウントファイル(CountFile)
CF                 :   1
カウントされた値を記録するファイルに使われる数値。
カウントファイルの自動作成が許可されていると、この数値を変更することでいくつでもカウンターを作れます。
カウンター・カウントダウン以外の表示(たとえばカレンダー)のときにも
カレンダーや時計表示のときはカウントとませんが、カウンター(訪問数)を隠して訪問者数をカウントする場合などはカウントさせる。その場合は[する(1)、しないならば(0)]
Count             :    0
リロードチェックをする。(CheckReload)
CR                :    1
[1]再読み込みの場合にカウントしない。[0]はいつもカウントする。
特定日(現在動作しない)
Event             :    000
TypeがcountdownD〜DHMSのときはここに書かれた数字を次のように判断
数字4桁 それを西暦の一月一日零時零分零秒とみなす。
数字4桁-数字2桁 西暦と月とみなし、その月の一日零時零分零秒とみなす。
数字4桁-数字2桁-数字2桁は西暦年月日の零時零分零秒とみなす。
数字4桁-数字2桁-数字2桁-数字2桁は、西暦年月日時間の零分零秒とみなす。
数字4桁-数字2桁-数字2桁-数字2桁:数字2桁は、西暦年月日時分の零秒とみなす。
数字4桁-数字2桁-数字2桁-数字2桁:数字2桁:2桁は、西暦年月日時分秒とみなす。
また、Typeがcountdownのときは、数字1桁からをカウント数の末尾とみなして、時間ではなくてカウント数をダウンする。
全部の数字/を対象とする場合はEventではなく、Justを使う。
特定のカウント数
Epoc              :    0000
Epocは、記述された数字列を末尾にもつ値に対してカウントダウンさせるときに利用する値です。たとえば[00]と書けば、100でも200でも2000にもマッチします。
Just              :
Justは、その値にマッチします。Justが書かれていれば上のEpocは無視されます。
メール送信
EMail             :    1
キリ番到達時にメールを[送信する 0|1 しない](現在動作しない)

--15--

画像の種類と編集(画像の種類や色)

画像の処理

オリジナル画像と枠付け前の処理

カウンターで使用する画像と枠付け前の処理をしていする。

デフォルトで使用する画像(を入れたディレクトリ)の名前(IMaGge)
IMG               :   BANKGOT
デフォルトで利用するカウンター用のイメージ。必ずサーバーに存在する画像を入れてあるディレクトリ名を記述する。大文字小文字を区別しません。
一文字の幅(DigiWidth)
DW                :   0
数字画像が大きい場合は必ず指定する。ここで指定される幅は数字画像のゼロの幅で、画像が等幅でない場合はそれに比例して拡縮されます。
[0]の文字の幅。[0,num]小数点を含む場合は拡大(縮小)率。そうでない場合はゼロ画像横のピクセル数。何も指定しないか[0]の場合は画像そのままの大きさ
画像の並べ方(Tile)
Tile              :   0
一つ一つの画像の並べ方[0]だと右から左へ、[1]だと上から下に並べる。
透明化:背景を透明にしない(Transparent)
Tr                :   0
(0)、透明にする(1)、カウンターの背景を透明にするときに指定(デフォルトでは不透明)
背景色(BackColor)
BC                :   0
画像の背景色。画像を回転するときに余白を塗りつぶすのにも使われる。指定しないときは[0,0]の点の色が使われる。
透明色:背景を透明にするときの色(TransparentColor)
TrC               :   #000000
背景を透明に指定したときはその色を指定する。(デフォルトでは黒)
一つ一つの画像の向き(Rotate)
Ro                :   0
[R]で右に90°[L]で左に90°。0<数値<360の場合はその角度で右回転。[0]または指定がないと回転しない。この場合に余白が生じた場合は「背景色」で指定した色で塗りつぶされる。
画像の反転[しない
FL             :   0
(0)|縦(V)|横(A)]
最高桁数:最大桁数、0のときは無制限
Max               :   0
最大桁数、自分のサイトの状況から指定する。
最低桁数:桁数が少ないときの桁数
Min               :   4
あまり先頭にゼロが続くとまずい場合に指定する。指定しない場合は[MaxFig]の値になります。
枠付け前の回転
Spin              :   0
[R]で右に90°[L]で左に90°。0<数値<360の場合はその角度で右回転。[0]または指定がないと回転しない。この場合に余白が生じた場合は「背景色」で指定した色で塗りつぶされる。
画像の前処理。枠をつける前の画像の特殊処理
[しない(0)|する(1)]
PreManipulate     :   0

--16--

枠付け時の処理

枠の種類や色、サイズを指定する。

枠のタイプ(FrameType)
FTy               :   border
frameは幅だけ指定すると盛り上がった枠が付きます。
[border|frame]
枠の幅:ピクセルで指定(BorderWidth)
BW              :   4
枠の種類を[frame]にした場合にその幅を指定する。
フレーム外側の枠の幅(FramerOutWidth)
FOW              :   6
枠の種類を[border]にした場合、内外および中心部を個別に指定できます。外側の枠幅をピクセルで指定
フレーム内側の枠の幅(FrameInsideWidth)
FIW              :   2
内側の枠幅をピクセルで指定
枠の色:枠の色を指定しないときの色(FrameColor)
FC               :   #00ffff
枠の色を指定する。
枠との余白
Padding           :   0
枠と文字画像との余白
枠の数
Repeat            :    1
枠の数--枠をつけない場合は0にする。

枠付け後の処理

枠をつけた後での画像の処理

画像の反転[しない
Fl              :   0
(0)|縦(V)|横(A)]
合成された画像をまとめて回転
RO               :   0
画像の回転[回転しない角度の指定方法は「一つ一つの画像の向き」と同じ
回転背景色(ROtationColor)
ROC :
枠付け後に回転するときの背景色
貼り付けるページの背景色と同じ色を指定する
出力画像の種類(ImageFormat)
IF           :   png
デフォルトではPNG。古いブラウザではPNGが表示できない場合があります。
[png|gif|jpg]
画像の後処理。枠をつけた後での画像の特殊処理
PostManipulate    :   0

--17--

特殊な設定

ここからの設定項目は、この設定ファイルでのみ設定が可能でPATH_INFOやQUERY_STRINGSでは上書きできない。

カウントデータ関連
カウントデータを保存するディレクトリ名
countDir          :   /homepage/log/LaCounter
カウントファイル名
countFileName     :    LaCount
カウントファイルの拡張子
countFileExt      :    txt

画像

カウンター用のイメージ(ディレクトリ)を入れたディレクトリ
counterImageDir   :   /homepage/images/counterImage
カウンター用の画像を置いておくディレクトリをサーバーのルートからのパスで記述します。
前処理・後処理用ファイル
manipulateFile    :   ./Manipulate.pl

アクセスログ

アクセス解析をする(1)/しない(0)
log               :   0
アクセスの記録を保存するか否かをここで指定します。デフォルトでは記録しません。1を指定するとアクセスされたときのいくつかの情報(日時/ユーザーエージェント/IPアドレス/直前のページ)をエクセルに対応したCSVファイルに記録します。
ログファイルを置くディレクトリ
accessLogDir      :   /homepage/log/LaCounter
アクセスの記録を保存する場合は必ずその場所を指定すること。
ログファイル名
accessLogFileName :    access
ログファイル拡張子
accessLogFileExt  :    csv

作業ファイル

記録としては残さない一時的なファイル

作業用ファイルを置くディレクトリ
tempDir           :   /tmp/LaCounter
リロードチェック用ファイル
checkFile         :   IPcheck
IPアドレスチェックファイル拡張子
checkFileExt      :    txt
リロード有効期限
reloadExpires     :   10

--18--

クッキー

クッキーの名前
cookieName        :    LaCounter
イベント設定の場合のクッキーの名前
expCookieName     :    LaCounterExp

その他

カウントファイルの自動作成
autoMakeCountFile :    0
通常はOにしておく。1だと画像を呼び出す時にその番号のカウントファイルがない場合自動的に作られるが、そうすると訪問者が勝手に任意のカウントファイルを作られてしまう。
なお、一時的に1にしてから再び0に戻すことでカウントファイルを作成することもできる。
この項目はタグからは変更できない。
時差--サーバーとの時間差がある場合
timeDef           :    0

4-2:カウントファイル

カウントファイルは4-1:設定ファイルの[autoMakeCountFile]の値が[1]のときには自動的に作られます。そうでないときは空のファイルを所定の場所[countDir]で設定してある場所に[countFileNmae](数字).[countFileExt]という名前で作っておく。

2006-Apr-24 17:29:43 (Mon)
    total    : 2
    2006     : 2
    200604   : 2
    2006112  : 2
    20060424 : 1

4-3:ログファイル

ログファイルは4-1:設定ファイルの[log]の値が[1]のときには、[accesssLogDir]に[accessLogFileName](数字).[accessLogExt]の名前で自動的に作られます。ログファイルはMicrosoftExcellで使えるように、CSV形式になっています。

[HTTP形式時間],[time],[REMOTE_ADDR],[REMOTE_HOST],[HTTP_REFERER],[USER_AGENT]

の形式で羅列されます。

2006-May-09 09:06:08 (Tue),1147133168,220.146.179.98,220.146.179.98,以下略
2006-May-09 09:29:27 (Tue),1147134567,220.146.179.98,220.146.179.98,以下略
2006-May-09 10:32:49 (Tue),1147138369,220.146.179.98,220.146.179.98,以下略
2006-May-09 11:06:37 (Tue),1147140397,220.146.179.98,220.146.179.98,以下略

--19--

4-4:画像ファイル

画像はバイナリモードで、その他のファイルはテキストモードでサーバーに転送する。本体のCGIファイルには所有者に対してのみ実行権限を与える。他のファイルは所有者にのみ読み書きの権限を与える。

使用する画像について

配布サイトからの画像ファイルの入手と解凍方法

このCGIで使用する画像ファイルは、JPEG,GIF,PNG,BMP,TIFFをはじめとする、ほとんどの画像フォーマット(約90種類)を使用できますがGIFPNGを使用してください。。

画像配布先へのリンク

いずれの素材も、それぞれの配布サイトの利用条件を必ず確認して、それに従って利用してください。

Digit Mania
カウンター用の画像では(たぶん)もっとも有名
ここには、ZIPファイル(Windows用)とTAR.GZ(UNIX用)が置いてあります。画像に添えてあるアイコンの説明は"Contents"にあります。
White Pencil [simple web]
NOZAさんのサイトです。
カウンター素材(カウンター数字、カウンター用素材)の専門サイト
Dronさんのサイト
カウンター用画像 - Google 検索
上記以外にもGoogleなどで検索すると色々と見つかるでしょう。
カウンター画像の実例

こんな画像があります。(1:のABACUSJNをのぞいて)Digit Maniaにあるものです。

1ABACUSJN(算盤)(オリジナル)

2サンプル57 Chevy

3サンプルApple

4サンプルBank Gothic

5サンプルBar

7サンプルBCK Blue

--20--

8サンプルBembo

6サンプルBubble Dot Red

9サンプルBFBLACK

10サンプルBlue-Red Punch

11サンプルCALIGRA

12サンプルcledred

13サンプルcolors

14サンプルflowers

15サンプルFLUBBER

16サンプルkatt116

17サンプルKATT154

18サンプルmahjong

19サンプルnote

20サンプルsunset2

21サンプルuno

22サンプルWEB2

解凍方法

多くのサイトは圧縮ファイルとして配布されています。@niftyのLacoocanサービスではtelnetが使えないので、一旦ローカル側で解凍してからサーバーに転送する必要があるので、それぞれの圧縮方法に従って解凍する。

自作の画像

BMP(Microsoft Windows bitmap image file),PSD(Adbe Photoshop),TIFF (Tagged Image File Format),EPS (Adobe Encapsulated PostScript file)などのほとんどの形式の画像を扱えますが、サイズの比較的小さいJPEG(Joint Photographic Experts Group JFIF format),PNG(Portable Network Graphics),GIF(CompuServe Graphics Interchange Format)などが良いでしょう。

ひとつのディレクトリに入れる画像のファイル名と拡張子は大文字小文字を含めてすべて統一すること。またカレンダーや時刻表示に使用する(A,P,C,D)で始まる画像の(A,P,C,D)は必ず大文字にすること。

転送とパーミッション

サーバーの[/homepage/images/counterImage/]内に、ディレクトリごと転送(アップロード)する。(転送先は後述の設定ファイルやQUERY_STRINGで変更することができます。)

転送した画像は所有者のみに読み書きの権限(600)を与えてください。なお画像の入っているディレクトリは実行権限も追加(700)してください。(ブラウザで直接画像を見れるようにする場合は、それぞれ[605][707])にしておいても良いでしょう。

--21--

付録

A-1:設定ファイル

起動時に作成される設定ファイルのすべて

****This document is written in Japanese by charset euc-jp.*****
{ラカウンター用設定ファイル}
_________________________________________
※このファイルは、@niftyのLa.Coocan用のアクセスカウンター[LaCounter]の設定ファイル。
※このファイルは、
 ・このファイルはカウンターのインストール時に自動的に作成される。
 ・このファイルの文字コードは日本語EUC-JPです。
 ・このファイルはテキストエディタで編集できる。
 ・編集後、必ずテキスト(ASCII)モードでサーバーに転送する。
 ・コマンド行は[要素 : プロパティ]の1行で、その前方になにもないこと。
 ・初期値より変更しないコマンド行は削除してよい。
 ・要素とプロパティの区切りは[:]。
 ・[:]の前後には読みやすいように空白文字があってよい。
 ・先頭が大文字の項目はタグで上書き可能
 ・色名は#000〜#fffffffffないし、rgb(0〜255,0〜255,0〜255)、及び
   色名(http://imagemagick.org/script/color.php#table)が使用できる。
_________________________________________

[カウンター機能]
※この章ではカウンターの機能そのものの設定を行う。
# 表示形態(Type)
# このカウンターを何に使うか?カウンター、時計、それともカレンダー?
# カウンターは[counter]、特定のカウント数までのカウントダウンは[countdown]
# カレンダーは[calendar]、時計は[clock](24時間表記)か[clock12](12時間表記)
# カレンダーに使用する画像にはダッシュ(D)が必要
# 12時間表記のときは画像にAM(午前),PM(午後),コロンを示す画像(A,P,C)が必要
# 日時までのカウントダウンは[countdownD〜DHMS]D:日数、H:時間、M:分、S:秒
# [counter|clock12|clock24|calendar|countdown|countdownDHMS|
# countdownDHM|cowntdownDH|countdownD]
Ty                :    counter

# カウント対象(Target)
# いつのアクセス数を表示するか?カウンター(カウントダウン)の場合に表示する対象
# 累計[total]、今年[year]、今月[month]、今週[week]、今月[month]、今日[today]
# [total|t|year|y|month|m|week|w|month|m|today|d]
Ta                :    total

# カウントファイルの番号(CountFile)
# 異なるカウントファイルを使うことが出来る。
# [1..]
CF                :    1
		

--22--

# カウント動作時以外のカウント(Count)
# カウンター(カウントダウン含む)以外の表示(時計やカレンダー)のときにも
# カウントするか?。しないときは[0](デフォルト)、カウントするときは[1]
# [1|0]
Count             :    0

# リロードチェックチェック(CheckReload)
# 再読み込みの場合にカウントするか、しないか?
# [1]再読み込みの場合にカウントしない。[0]はいつもカウントする。
# [1|0}
CR                :    1

# 特定日(Event)
# 日時のカウントダウンをするときの目標とされる日時の指定
# TyがcountdownD〜DHMSのときはここに書かれた数字を次のように判断
# 数字4桁 西暦とみなし、目標をその年の一月一日零時零分零秒とみなす。
# 数字4桁-数字2桁 西暦と月とみなし、その月の一日零時零分零秒とみなす。
# 数字4桁-数字2桁-数字2桁は西暦年月日の零時零分零秒とみなす。
# 数字4桁-数字2桁-数字2桁-数字2桁は、西暦年月日時間の零分零秒とみなす。
# 数字4桁-数字2桁-数字2桁-数字2桁:数字2桁は、西暦年月日時分の零秒とみなす。
# 数字4桁-数字2桁-数字2桁-数字2桁:数字2桁:2桁は、西暦年月日時分秒とみなす。
# [\d{4}|\d{4}-\d{2}|\d{4}-\d{2}||\d{4}-\d{2}-\d{2}|
# \d{4}-\d{2}-\d{2}-\d{2}|\d{4}-\d{2}-\d{2}-\d{2}-\d{2}}
Event             :    000

# カウントダウンの目標(Epoc)
# 全部の数字/を対象とする場合はEventではなく、次のJustを使う。
# 特定のカウント数までのカウントダウンを行うときの目標となるカウント数の末尾を指定。
# [0000}で一万カウントごとにカウントダウンする。
# [数字1桁以上]
Epoc              :    0000

# 特定カウント数(Just)
# 特定のカウント数のみを対象とする場合はこちらを指定する。
# [数字]
Just              :

# 最高桁数(Max)
# 数字の前に0を置く最大桁数、0のときは無制限で常時先頭は0
# [数字]
Max               :    6

# 最低桁数(Min)
# 桁数が少ないときの桁数、これ以下の値の場合前方が0で埋められる。
# [0...]
Min               :    6
		

--23--

[画像の種類と編集]
※カウンターで表示する画像に関する設定
(画像連結前の処理)
# 画像の種類(IMaGe)
# カウンターに使用する画像を画像フォルダーの名称で指定する。
# [画像のディレクトリ名]
IMG               :    KATT154

# 表示画像の幅(DigiWidth)
# 一文字の幅:ひとつの文字の幅。0のときは画像本来の幅
# プロポーショナルな画像の場合は一定の比率で拡大縮小される。
# 0.1,1.2など小数点を含む数値の場合は縮小・拡大率
# 10などの整数値では文字[0]の横幅(ピクセル数)
# [\d+|\d+.\d+]
DW               :    0

# 画像を並べる方向
# 一つ一つの画像の並べ方[右(0)|下(1)]
# 画像を連結する方向(漢数字などは縦)
# [0|1]
Tile              :    0

# 背景の透明化(Transparent)
# 透明化:背景を[透明にしない(0)、透明にする(1)]
# 画像によっては透明化できない場合がある。
# [0|1]
Tr                :    0

# 背景色(BackColor)
# 素材画像の背景色が指定されている場合、背景を透明にするかしないか。
# 画像によっては機能しない場合がある。
# [色名]
BC                :

# 透明色(TransparentColor)
# 透明色:背景を透明にするときの色
# 指定しない場合は画像の左上のピクセルの色を使用する。
# [色名]
TrC               :

# 画像の回転(Rotate)
# 一つ一つの画像の連結前の回転(0|R|L|A|0〜360)
# [R]で右に90°[L]で左に90°。0<数値<360の場合はその角度ver右回転。
# [0]または指定がないと回転しない。この場合に余白が生じた場合は「背景色」
# で指定した色で塗りつぶされる。
# [0-360]
Ro                :    0
		

--24--

# 個別の画像の鏡像(FLip)
# 連結前の画像の反転を行うか否か
# 上下二反転する場合(V)、左右に反転する場合(A)
# [0|A|V]
FL                :    0

(画像連結後の処理)
# 枠付け前の回転(Spin)
# 画像を連結したのちにまとめて回転する場合
# [数値]
Spin              :    0

# 画像の枠づけ前の追加処理
# 画像をさらに編集する場合その処理を記述したスクリプトに従って処理できる。
# 画像の前処理。枠をつける前の画像の特殊処理[しない(0)|する(1)]
# [0|1]
PreManipulate     :    0

(枠の設定)
# 枠のタイプ(FrameType)
# [border|frame]
FTy               :    frame

# 枠(Frame/Border共通)の幅
# 枠の幅をピクセルする。
# [数値]ひとつで縦横とも同じ幅、[数値,数値]で、横|縦の幅を個別に指定可能
# [数値(,数値)]
BW                :    6

# 外枠の幅
# 枠がFrameのときの最も外の枠の幅
# [数値]
FOW               :    2

# 内枠の幅
# 枠の種類がFrameのときの内枠の幅
# [数値]
FIW               :    2

# 枠の色
# 枠(Frame/Border共通)の色
# 色名はimageMagickの認識できる形式で指定
# <URLで指定するときは必ずURLエンコードして記述する>
# たとえば、#f00000 は、%23f00000 とすること
# [色名]
FC                :    #f0f000
		

--25--

# 画像と枠の余白
# [数値]ひとつで縦横とも同じ幅、[数値,数値]で、横|縦の幅を個別に指定可能
# [数値(,数値)]
Padding           :    0

# 枠の数
# 枠の数、[0]だと枠なし、[1]はデフォルト
# [数字]
Repeat            :    1

# 枠付け後の画像の反転(Flip)
# 画像をフリップ(鏡像)に[しないは0、縦方向でV、横方向でA
# [0|V|A]
Fl                :    0

# 合成画像の回転
# [R]で右に90°[L]で左に90°。0<数値<360の場合はその角度ver右回転。
# [0]または指定がないと回転しない。この場合に余白が生じた場合は「背景色」
# で指定した色で塗りつぶされる。
# [0-360]
RO               :    0

(枠付け後の処理)
# 画像の後処理。枠をつけた後での画像の特殊処理
PostManipulate    :    0

# 出力画像の種類(ImageFormat)
# 画像の出力形式の指定
# [png|gif|jpg]
IF                :    png

[カウンターのサーバー側設定]
※以下の項目は、画像の読み込み時には指定できない。(PATH_INFO,QUERY_STRINGSとも)

(ディレクトリの設定)
※カウント数を保存するディレクトリ<ルートからの絶対パスで記述>
# カウンター本体ログを保存する場所
countDir          :    /homepage/log/LaCounter

# 画像を置くディレクトリ
imageDir          :    /homepage/images/counterImage

# ログファイルの保存ディレクトリ
accessLogDir      :    /homepage/log/LaCounter

# 作業用ファイルを置くディレクトリ
tempDir           :    /tmp/LaCounter
		

--26--

(ファイル名)
※それぞれのファイル名
# カウントファイル名
countFileName     :    LaCount

# カウントファイルの拡張子
countFileExt      :    txt

# ログファイル名
accessLogFileName :    access

# ログファイル拡張子
accessLogFileExt  :    csv

# IPアドレスチェックファイル
checkFile         :    reloadCheck

# IPアドレスチェックファイル拡張子
checkFileExt      :    txt

(追加スクリプトファイル名)
# 前処理・後処理用ファイル
# それぞれsub preManipulate{} sub postManipulate{}と言う名前で
# 追加スクリプトを記述して保存するファイル名
manipulateFile    :    ./Manipulate.pl

(動作設定)
# アクセスログを取るかとらないか
# 取るなら1、とらないなら0
# [0|1]
log               :    0

# ログの最大記録数
# ログは、CSV(Excell対応の、カンマ区切りテキストで保存される)
# [数値]
logMax            :    200

# リロード有効期限
# リロードされたとき無視する秒数、初期値は1200秒=20分
# [数値]
reloadExpires     :    1200

# クッキーの名前
# [strings]
cookieName        :    LaCounter

# イベント設定の場合のクッキーの名前
# [strings]
expCookieName     :    LaCounterExp
		

--27--

# メール送信(eMail)
# 特定カウントをゲットされたとき管理者にメールを送信する。
# キリ番到達時にメールを[送信する 0|1 しない](現在動作しない)
# [0|1]
eMail             :    1

# カウントファイルの自動作成
# 通常はOにしておく。1だと画像を呼び出す時にその番号のカウントファイルがない場合
# 自動的に作られるが、そうすると訪問者が勝手に任意のカウントファイルを作られてしまう。
# なお、一時的に1にしてから再び0に戻すことでカウントファイルを作成することもできる。
# この項目はタグからは変更できない。
# [0|1]
autoMakeCountFile :    0

# 設定の上書きを許可する。
overWrite         :    1

# 時差--サーバーとの時間差がある場合
timeDef           :    0

# ブラウザ対策
# 一部のブラウザでは、画像が送られてくるまでのタイムラグが待てずに
# 再読み込みを試みるものがあるようです。そのための対策として、リロードの
# チェックの設定に関わらずこの秒数以下ではカウントしない。
# リロードをチェックしないときの画像の有効期間にも使用される。
browser           :    2

--------------------------------------------------------------------
【文書情報】このスクリプトの説明と使用条件が書かれています。
 このスクリプトは、@nifty@homepageのLaCoocanサービス用に製作したアク
セスカウンターですが、他のサーバーでも必要なモジュールがあればこのまま
動作するはずです。
(利用条件)
・この配布条件は変更できないこと。
・このプログラムはフリーです。ここでいうフリーとは、以下の条件に従う限り
 自由と言う意味で、無料と言う意味ではありません。
・このプログラムは自由に改造、再配布、友人に設置してあげるなどが自由にで
 きます。
・また、配布や設置してあげたり、それらに対価を受け取ることも自由です。
・改造した場合はその変更点と変更した日付と責任者を明記し、オリジナルと区
 別できるようにすること。
・配布したり設置してあげた人にもこのプログラムが、再配布、改変、販売が自
 由であることを必ず伝えること。
・無保障である事。
(改訂履歴)
V1.0 最初のバージョン by Shizuka Teshima shizuka@ichiya.com
    URL: http://iruka.la.coocan.jp/cgi/LaCounter/
		

--28--

リンクと書籍

抄録

このCGIを作成するに当たって利用させていただいたネットワーク上の資料と参考書

Perl/CGI

Perlメモ
Perl正規表現雑技
大崎さんのPerlの情報サイト

Perl::Magick関連

ImageMagick: Convert, Edit, and Compose Images
ImageMagick: PerlMagick, Perl API for ImageMagick
:: Cepheid :: - PerlMagickリファレンス
:: Cepheid :: - ImageMagickの使用例
ImageMagick でカウンター表示
PerlMagick + CGI

カウンター用画像

Digit Mania
カウンター用の画像では(たぶん)もっとも有名
ここには、ZIPファイル(Windows用)とTAR.GZ(UNIX用)が置いてあります。画像に添えてあるアイコンの説明は"Contents"にあります。
White Pencil [simple web]
NOZAさんのサイトです。
カウンター素材(カウンター数字、カウンター用素材)の専門サイト
Dronさんのサイト
カウンター用画像 - Google 検索
上記以外にもGoogleなどで検索すると色々と見つかるでしょう。

GNU/GPL

GNU 一般公衆利用許諾契約書 - GNU プロジェクト - フリーソフトウェア財団 (FSF)
GNU/GPLの邦訳
GNU GPLに関して良く聞かれる質問 - GNU プロジェクト - フリーソフトウェア財団 (FSF)
フリーソフトについてのFAQ

HTML・CSS

書籍

Perl/GNUソフトウェアによるWebグラフィックスプログラミング
Shawn P. Wallace 著、田中 幸 訳、ISBN4-87311-020-3
Perl Graphics Programming
By Shawn Wallace, ISBN: 0-596-00219-X

--30--

開発環境

OS
WindowsXP,FreeBSD
アプリケーション
WindowsXP:Cygwin,ActivePerl,Apache,EmEditor
FreeBSD:Apache,Perl

A-4:文書情報

A-4-1:改訂履歴

First Published
2006-03-15
Last Modified
2006-03-15 12:00:00 (JST)

A-4-2:ライセンス

© TESHIMA Shizuka 2001 - 2004 All Rights Reserved mailto:office@ichiya.com

A-4-3:

Valid HTML 4.01! Valid CSS! Void HTMLLINT

--31--