人目
|
グラフィックタイプの
アクセスカウンタ
|
|
目次
ホームページ(最初のWebページ)で使用できるグラフィックタイプのアクセス
カウンタ”gacf(graphic access counter for first Web page)”をここで
公開しております。
ここから、ダウンロードして貴方のホームページに設置可能です。ここから
直接ダウンロードされた場合には、”無料”です(カンパは歓迎しております)。
著作権は竹ソフトに所属しますが、貴方のサイトで自由に変更して頂いてかま
いません。
このカウンタの特徴は、CGI(Common Gateway Interface)のみで、使うこと
ができる点です。(SSI(Server Side Includeは不要))。
最初のWebページにFRAMEをお使いの場合および2ページ目以降に取り付ける
カウンタについては次節”gacs"を御覧下さい。
”gacf”の設置方法
- ”index.html”のWebページの設定
貴方の最初のWebページ(ファイル名を”index.html”として説明し
ます)の
カウンタの数字を入れたい部分に
<!-- INSERT_COUNTER -->
という行を半角大文字で挿入して下さい(説明文にこの文字列を半角大文字で
書いたらそこにもカウンタの数字が 挿入されてしまいました)。
この行には、他の文字等は入れないで
下さい。また、このWebページの他の部分には、
”INSERT_COUNTER”(の半角大文字の文字列)
という文字列は、使用しないで下さい。
例えばページの最初に表示する場合の例を以下に示します。
<HTML>
<HEAD>
<TITLE>Any Title</TITLE>
</HEAD>
<BODY>
<P ALIGN=RIGHT>
あなたは、
<!-- INSERT_COUNTER -->(ほんとは半角大文字)
人目です。
</P>
ここで、”あなたは、”や”人目です。”の部分は、適宜変更してい
ただいてかまいませんし、なくても問題ありません。その上の
<P ALIGN=RIGHT>
は、カウンタの表示を右側にすることを指示しています。しかし、
”ALIGN=RIGHT”の指定は、Netscape Navigator 2.0等でしか有効では
ありません。TABLEタグを使って右寄せする方法はInternet Explorer
2.0等でも有効です。TABLEタグを使って右寄せする方法については、
”竹ソフト”のホームページの最初の部分のソースを御参照下さい。
それでも、TABLEタグに対応していないブラウザでは、右寄せできませ
ん。
また、このファイルの一番最後の方にIMGタグから
”gacf.cgi”を呼び出す行を必ず挿入して下さい。以下に例を示します。
<IMG SRC="gacf.cgi" BORDER=0 ALT="">
</BODY>
</HTML>
- ”index_.html”の準備
次に、”index.html”をコピーして、”index_.html”という名前の
ファイルを作って下さい。”_”は、アンダースコア(アンダーバー)
です。
- ”gacf”のCGIスクリプト
次のファイルをここからダウンロードして下さい。Netscape Navigator
の場合のダウンロードの仕方は、リンクをクリックして内容を表示
させてから、メニューの”ファイル”から”名前を付けて保存”を選
んで下さい。他のブラウザの場合は、マニュアルを御参照下さい。貴方
のファイル名を指定するダイアログがでますから、同じ名前で保存し
て下さい。このページへ戻るには、ブラウザの”戻るボタン”等を
御使い下さい。
gacf.txt(ver.1.1)(3 KB)
ダウンロードしたらファイル名を”gacf.cgi”と変更して下さい。
一行目は、perlのインタプリタのあるところです。次の場所
#!/usr/local/bin/perl
の場合が多いですが、サイト(プロバイダ)によっては、異なる場合
がありますのでその場合は、プロバイダかシステム管
理者にお問い合わせの上変更して下さい。標準的なディレクトリに
perlがインストールされている場合には、UNIXコマンドの
whereis perl
または、
which perl
でわかる場合があります。
また、このカウンタに必要なファイル名をここで説明している
ものと変える場合や、CGIではフルパスのファイル名を指定する必要
がある場合には、このファイルの中の”(1)”の部分の5個のファイル
(ディレクトリ)名を適宜変更して下さい。(BIGLOBE(mesh)の場合は、
CGIファイルのあるディレクトリが現在の作業ディレクトリpwdに設定
されるので、そこからの相対パスでファイルを指定できるためパスを
変更する必要はありません。)
例えば、rimネットの場合は、
次のように変更して下さい。ここで、”user-id”は、”takesoft”
のようなユーザーのID名です。”/home/usr3/”の部分は、サイトに
よって異なります。$gif_dir以外は、ファイル名をフルパス指定し、
$gif_dirのみは、相対パス(URLの一部)です。($gif_dirは、
index.htmlファイルのIMG
タグに埋め込まれ、ブラウザから参照されますが、他のファイルは
CGIで直接使われます。)
#
#(1) set constants.
#
$html_file0 = "/home/usr3/user-id/public_html/index_.html"; # prototype html
$html_file = "/home/usr3/user-id/public_html/index.html"; # output html
$count_file = "/home/usr3/user-id/public_html/count.txt"; # guest number
$gif_dir = "./image/"; # dir of gif files
$dummy_gif_file = "/home/usr3/user-id/public_html/image/trans.gif"; # dummy gif
#
[IE 2.0をお使いの方への注意事項]
Windows 95上で作動するInternet Explorer 2.0を用いて、gacf.txtを
ダウンロードした場合、ファイルの先頭に2行の空白行が勝手に挿入
される場合があります。このような場合は、メモ帳や秀丸のような
エディタで、先頭の空白行を必ず削除して下さい。先頭行で上に
述べたperlのファイルを指定していないとperlのcgiは、うまく動き
ません。
[Netscape Historyをお使いの方への注意事項]
gacfのユーザーの方から「Netscape Historyというソフトを用いて
キャッシュのデータからgacf.txtをsaveしたら、gacf.txtの一部が、
”__unavailable__.gif”に変わってしまった」という情報をいただき
ました。このような変更が生じるとうまくカウンタが動かないので
gacf.txtは、ここのWebページから直接ダウンロードしていただくよう
お願いします。
[Windows 3.1 および、Homepage Builder等をお使いの方への注意]
htmlファイルの拡張子が、”htm”となりますので、このページの説明
のファイル名が”xxx.html”となっている部分を、すべて、
”xxx.htm”と読み替えて、設置作業を行って下さい。
- ”count.txt”ファイル
カウンタの数値を入れるファイル
count.txt(1 B)
をここからダウンロードするか、エディターで半角の数字”0”のみ
が入ったファイルを用意して下さい(リターンは入れないで下さい)。
カウンタを途中の番号から始めたい場合は、始めたい番号より1小さ
い数値を半角の数字で書いたファイルをエディターで作って下さい。
ファイル名は、”count.txt”にして下さい。
[IE 2.0の場合の注意事項]
Windows 95上で作動するInternet Explorer 2.0を用いて、count.txtを
ダウンロードした場合、ファイルの先頭に2行の空白行が勝手に挿入
される場合があります。このような場合は、メモ帳や秀丸のような
エディタで、先頭の空白行を必ず削除して下さい。そして、count.txtは、
ローカルファイル上でもftpで送ったWebサイト上でも最初は、必ず1バイ
トです。
- ”trans.gif”ファイル
ダミーとして送る小さい透明の四角のgifファイルです。このgifファ
イルはここからダウンロードするか御自分で御用意下さい。ダウンロ
ードする際に、この下の”tarns.gif”をクリックしてもこのgifは、
透明なので、なにもないバックだけが表示されますが、かまわず、
メニューの”ファイル”から”名前を付けて保存”を選ぶ等の
操作で、ダウンロードして下さい。
trans.gif(832 B)
- 数字のgifファイルの転送
以下に示す数字を表示するためのgifファイルをどれか1組10個
ダウンロードして下さい。Netscape Navigatorの場合、数字の画像
の上にマウスポインタを置き、右クリックして下さい(マックの場合
数秒間押し続ける)。出てきたメニューから、”画像を名前を付けて
保存”を選択して下さい。貴方の計算機でのファイル名は、
”0.gif”、”1.gif”、
”2.gif”、...、”9.gif”のようにして下さい。
自分で、数字のgifファイルを作る方や、他の数字のgifファイルを
使う方は、ここからダウンロードする必要は、ありませんが、ファイル
名は上のようにして下さい。(リンクのページにもっとユニークな
数字のgifファイルを入手できるWebページを紹介しています。また、
後から取り替えることも簡単にできます。)
○白地に黒字(15 x 20 pixel)
○黒地に白字(15 x 20 pixel)
○黒地に緑字(16 x 21 pixel)
○白地に黒字(20 x 30 pixel)
○黒字に白地(20 x 30 pixel)
- [ファイルのアクセス権]
BIGLOBE(mesh)やrimnet等多くのプロバイダでは、UNIXのワークステ
ーションを用いて、httpdソフト(webページのサービスソフト)を動か
しています。UNIXのファイルにおいては、ファイル毎にアクセス権と
いう属性データがあります。例えば、gacf.cgiのファイルのアクセス
権を”705”に変更するというように使われます。UNIXのアクセス権は
3桁の8進数で表され、上の桁から、所有者、所有者の属するグルー
プおよび一般の人に対するアクセス権を示しています。そして、各桁
の値は、0から7までです。そして、
読み出し可 4
書き込み可 2
実行可 1
という値を決めておき、許可する操作の和の値で、そのファイルに対
する操作の許可を制限しています。この値が7だと
7 = 4 + 2 + 1
ですので、読み書き実行ができるということになります。5だと
5 = 4 + 1
ですので、読み込みと実行ができるということになります。従って、
gacf.cgiのアクセス権を”705”にするということは、所有者は、読み
書き実行ができて、所有者と同じグループの人は、なにもできず、
一般の人は、読み込みと実行ができるようにするという意味です。
所有者と同じグループの人になにもできないようにするのは、保安上
の措置で、同じグループの人でもブラウザを用いて来た場合には、
一般の人の扱いになりますので、gacf.cgiは実行できます。
アクセス権がうまく設定できたかどうかの確認は、ftpでログインして
いる場合には、
ftp> dir
telnetやシェルでUNIXのコマンドモードになっている場合は、
ls -la
で(小文字のエル、エス、半角空白、マイナス、エル、エイです)、
確認できます。これらのコマンドで次のような出力があった場合
-rw----rw- count.txt
-rwx---r-x gacf.cgi
”-rwx---r-x”という表示を少し説明します。
1文字目 - ファイル
d ディレクトリ
l リンク(今はちょっと関係ないので説明しません)
2〜4文字目 所有者のこのファイルに対するアクセス権
2文字目 r 読み出しできる (値 4)
- 読み出しできない
3文字目 w 書き込みできる (値 2)
- 書き込みできない
4文字目 x 実行できる (値 1)
- 実行できない
5〜7文字目 所有者の所属するグループの人の、このファイルに対するアクセス権
5文字目 r 読み出しできる (値 4)
- 読み出しできない
6文字目 w 書き込みできる (値 2)
- 書き込みできない
7文字目 x 実行できる (値 1)
- 実行できない
8〜10文字目 その他の一般の人の、このファイルに対するアクセス権
8文字目 r 読み出しできる (値 4)
- 読み出しできない
9文字目 w 書き込みできる (値 2)
- 書き込みできない
10文字目 x 実行できる (値 1)
- 実行できない
すなわち”count.txt”は”606”、”gacf.cgi”は、”705”になっている
ことを示しています。
- ファイルのアップロードとアクセス権の変更
ftpソフトで次のファイルをホームページのディレクトリへ、”必ず”テキスト
モード(=asciiモード)で転送(put)して下さい。(普通の場合は、html
ファイルはバイナリモードで、送ってもブラウザは、ちゃんと表示して
くれますが、 gacf.cgi(perl)は、改行をLF(0x0A)でしか認識しないので、
うまく動きません。)
- index.html
- index_.html
- count.txt
- gacf.cgi
次にホームページのディレクトリの下にimageというディレクトリを
つくって(mkdir image)、下に示すgifファイルをバイナリーモードで
転送して下さい。
こうするのは、gifファイルは、一ヶ所に集めておいて各Webページ
から共通にアクセスする方がわかりやすいからです。しかし、このよ
うにしなくてもかまいません。その場合には、gacf.cgiの$gif_dir
および$dummy_gif_fileを適宜変更して下さい。
- trans.gif
- n.gif (nは、0 〜 9)
そして、”index.html”と”count.txt”のファイルのアクセス許可を
”606”に変更して下さい。”gacf.cgi”のファイルのアクセス許可を
”705”に変更して下さい。そのほかのファイルは、一般の人から読み
出し可能であればよいので、通常変更不要です。
BIGLOBE(mesh)で、ファイルのアクセス許可を変更するには、ftpで
目的のサイトにログインして次のようにします。
一方、rimnet等telent(shell)モードでUNIXコマンドが使える場合は、
次のようにして、アクセス権を変更して下さい。
ftpやUNIXのコマンドについて不案内の方は、技術資料のページの
”計算機コマンドのRosetta Stone”を御覧下さい。表2に他のOSの
コマンドとの対比を示しています。
- ファイルのバックアップ等
ftpでWebページのディレクトリへ送った15個のファイルは、
”gacf”の不具合やサーバーの不調等の原因で破壊されるおそれが
ありますので必ずローカルなディスクにバックアップを保存する
とともに、フロッピーディスクやDAT等別媒体にもバックアップして
おいて下さい。細心の注意を払って作っておりますが、”gacf”および
その設置作業に伴う損害は、補償できませんので悪しからず御了承下
さい。
また、カウンタの数値は、時々ホームページを見て、日付と時刻
とともにメモしておいて下さい。”count.txt”ファイルが壊れた場合
その数値を用いて再設定して下さい。
- cgiの実行許可
BIGLOBE(mesh)では、ファイルの拡張子が”cgi”であれば、自動的
にcgiとして実行可能なように設定済みなので、ユーザは、特別な設定は必要
ありません。しかし、他のサイトでは、特別な設定が必要な場合があります。
例えば、rimネットでは、
”.htaccess”という名前のファイルを作って、
AddType application/x-httpd-cgi .cgi
という文字列を入力し(.cgiの前に半角空白が1個必要)最後に改行した
ファイルを作り、このファイルをテキスト
モード(=asciiモード)で、ユーザーのWebサイトの”public_html”
ディレクトリに送っておく必要があります。
また、サイトによっては、cgiはすべてユーザのcgi-binというディ
レクトリに置く必要があったりする場合があります。詳しくは、プロバイ
ダーまたはシステム管理者にお問い合わせ下さい。
- 最初のアクセス
最初に”gacf”を設置した後、ホームページに最初にアクセスしたときに
は、カウンタの数字は、表示されません。ブラウザの再読み込みのアイ
コン(Netscapeの場合は、矢印がぐるっと一周しているマークです)を
クリックするかメニューの中から再読み込みを選んで実行してみて下さい。
再読み込みで”あなたは、1人目です。”というような表示がでたら”gacf”
の設置は、成功です。
うまく行かない場合は、ftpで送った15個のファイル名をブラウザのURL
を指定するテキストボックスにフルパスで指定してみて、ファイルの存在
と中身を確認して下さい。”trans.gif”ファイルは、透明なので、見えませんが
ファイルがあるかどうかは、確認できます。すべてのファイルが正常に存在
する場合は、ftp等でファイルのアクセス権が上述の設定通りになっているか
確認して下さい。
- 修正の際の注意事項
”gacf.cgi”は、”index.html”の転送後に起動され、カウンタの数値
を1増やしてから、”index_.html”を”index.html”に一行ずつコピー
します。しかし、その行に ”INSERT_COUNTER”(の半角大文字)
という文字列があると
カウンタの数値の個数だけ、カウンタの数値を示すgifファイルのIMGタグを
”index.html”に書き込みます。そうしてできた”index.html”は、次回の
アクセスの際に使われます。
従って、Webの最初のページを修正する場合には、”index.html”では、
なく、”index_.html”の方を修正して、Webの最初のページのディレクト
リにお送り下さい。そして、”index.html”への修正は、一回遅れるので、
再読み込みを実行してから、変更部分の確認を行って下さい。
また、修正の際には、”index.html”をWebの最初のページのディレクトリ
にftpで送らないで下さい。もし、送ってしまった場合には、アクセス許可
を必ず606に変更して下さい。
- 特別に高精度にカウントしたい方へ
gacf.cgiをお使いのうちに、カウンタの数字が最初にアクセスしたときと、
内部で、他のページをみて、最初のWebページに戻ったときで1増加している
ことに気かれるかもしれません。これは、最初は、
”http://www2a.meshnet.or.jp/~takesoft/”
というURLでアクセスしますが、内部からは、”../index.html”というような
指定でアクセスため、ブラウザが別のものと思って、アクセスの設定を
”セッションに一回”としていても、2度index.htmlファイルを読みに行
くためです。しかし、たいていのブラウザは、賢いので、index.htmlファイル
自体を何度か読み込んでも、そこに書いてある
<IMG SRC="xxx.yyy">
の中のxxx.yyyが以前と同じものだと、キャッシュの中のデータからxxx.yyyを
探してきて使います。今回の場合、gacf.cgiは、文字列上は、変化がないので
ブラウザが2回目以降index.htmlファイルを呼んだ際には、サーバーにデータ
を要求せずに1回目のときに送られてきたデータ、すなわち、透明な4角
(trans.gif)を表示します。Netscape Navigator 2.0や
Internet Explorer 2.0では、1回のアクセスでは、内部で最初の
ページに何度戻ってきてもgacf.cgiは、1度しか呼ばれないのを確認しました。
すなわち、NN 2.0やIE 2.0では、正確に外部からのアクセス回数をカウント
しています。
しかし、世の中には、いろいろなブラウザがあり、中には、index.htmlファイル
を読み込む毎に、その中のIMGもすべてもう一度サーバーから送ってもらおう
とするブラウザがあるかもしれません。そういう場合にも、内部のページからの
アクセス分は、カウントしたくないという方のために、indexwog.cgiを作り
ました。使い方は、比較的簡単です。次のindexwog.txtをダウンロードして、
ファイル名をindexwog.cgiに変更して下さい。
indexwog.txt(1 KB)
つぎに、そのindexwog.cgiをindex.htmlのあるディレクトリ
(例えばpublic_html)へテキストモード
(=asciiモード)で送り、アクセス権を705にして下さい。そして、今まで、
最初のWebページへ戻るために、内部のWebページに
<A HREF="../index.html">[ホームページへ戻る]</A>
と書いていた場合には、
<A HREF="../indexwog.cgi">[ホームページへ戻る]</A>
と変更します。すなわち、”index.html”を”indexwog.cgi”に変更します。
indexwog.cgiで行っていることは、単純で、index.htmlを一行ずつ読んで
ブラウザに送るのですがその行に"gacf.cgi"という文字列が
含まれている場合だけその行を、ブラウザに送らないのです。最初のWeb
ページのファイル名を”index.htm”としている方は、indexwog.cgiの
なかの変数$html_fileの設定を"index.htm"に変更して下さい。
- このgacfに関する質問等
竹ソフトのコメントリンクWebボード
に書き込んでいただくか、当方まで、E-mailをお願いします。
- 謝辞
”gacf”の開発にあたり、鈴木 秀夫さんに貴重な助言を頂きました。
ここに記して感謝の意を表します。
- カンパ等
資金カンパ、御寄付等は歓迎いたします。送金方法は、”送金”のWeb
ページを御覧下さい。金額は自由。義務ではありません。
個人用Webページの2番目以降のページで使用できるグラフィックタイプの
アクセスカウンタ”gacs(graphic access counter for secondary Web page)”
をここで公開しております。ここから、ダウンロードして貴方のWebページに
設置可能です。ここから、直接ダウンロードしてくれた方は、”無料”です。
著作権は留保しますが、貴方のサイトで自由に変更していただいてかまい
ません。
このカウンタの特徴は、BIGLOBE(mesh)のようにSSI(Server Side Include)は、使
えないが、CGI(Common Gateway Interface)は、使えるプロバイダーのWebページ
で、使用できることです。
ファイルの転送方法、アクセス許可の変更方法、CGIファイルの実行許可
については、”gacf”の場合と同じですので、そちらを参照して下さい。
”gacs”の設置方法
- 呼び出し側のWebページの設定
呼び出し側(リンク元)のWebページが”index.html”で、呼ばれる側
(リンク先)のWebページが”second/second.html”であるとして説明します。
つまり、呼ばれる側のデータは、すべて”second”というディレクトリに入れて
いることにします。実際には”second”という名前でなくてもよく、
別の名称でもかまいません。この呼び出し側で他のページにリンクを
張る場合、通常は、次のように指定します。
<A HREF="second/second.html">second ページ</A>
ここで、second.htmlにカウンタ”gacs”を付ける場合は、次のようにします。
<A HREF="second/gacs.cgi">second ページ</A>
すなわち、htmlファイルを指定する代わりにcgiファイルを指定します。
- 呼び出される側のWebページの設定
カウンタの数字を入れたい部分に
<!-- INSERT_COUNTER -->(半角大文字にして下さい)
という行を挿入して下さい。この行には、他の文字等は入れないで
下さい。また、このWebページの他の部分には、
”INSERT_COUNTER”(の半角大文字表示)
という文字列は、使用しないで下さい。
例えばページの最初に表示する場合の例を以下に示します。
<HTML>
<HEAD>
<TITLE>Second Page</TITLE>
</HEAD>
<BODY>
<P ALIGN=RIGHT>
あなたは、
<!-- INSERT_COUNTER -->(半角大文字にして下さい)
人目です。
</P>
ここで、”あなたは、”や”人目です。”の部分は、適宜変更してい
ただいてかまいませんし、なくても問題ありません。その上の
”ALIGN=RIGHT”に付いては、”gacf”のところの説明を御参照下さい。
- ”gacs”のCGIスクリプト
次のファイルをここからダウンロードして下さい。
gacs.txt(ver.1.0)(2 KB)
ダウンロードしたらファイル名を”gacs.cgi”と変更してください。
ダウンロードの仕方は、「”gacf”のCGIスクリプト」の項を参照して
下さい。
このカウンタをBIGLOBE(mesh)以外で使用される場合には、一行目の
#!/usr/mesh/bin/perl
をそのサイトのperlのあるところに変更して下さい。
また、CGIの中のhtmlファイル名
$html_file = "second.html";
および、カウンタの数値が入っているファイル名
$count_file = "count.txt";
は、適宜使用しているファイル名に変更して下さい。特にカウンタ
の数値が入っているファイルは、他のページのカウンタのファイル名
と重複しないようにして下さい。ページ毎にディレクトリを変えてい
る場合には、すべて”count.txt”というように同じ名前でもかまいま
せんがおなじディレクトリに入れる場合は、ページ毎に変えて下さい。
”gacs.cgi”ファイル自体も同じディレクトリに入れる場合に
は、ページ毎にファイル名を変える必要がありますが、ページ毎に
ディレクトリが異なる場合には、同じ名前でかまいません。
また、$gif_dirを数字のgifファイルのあるディレクトリを示すよう
適宜変更して下さい。例えば、”gacs.cgi”とこれで表示するhtml
ファイルがWebの最初のページの”index.html”のあるディレクトリ
より一段下と二段下の場合には次のようになります。
$gif_dir = "../image/" (index.htmlより一段下のディレクトリの場合)
$gif_dir = "../../image/" (index.htmlより二段下のディレクトリの場合)
また、CGIではフルパスのファイル名を指定する必要のあるサイトでは
、上述の2つのファイル名を次のようにフルパスに変更して下さい。
$gif_dirは、IMGタグのSRCのURLを指定するところに使用するので
相対指定のままにして置いて下さい。フルパスのディレクトリ構成
は、Webサイトによって異なります。わからない場合は、プロバイダ
または、システム管理者にお問い合わせ下さい。telnet(shell)モード
でUNIXのコマンドが使える場合には、”pwd”コマンドでわかります。
$html_file = "/home/usr3/user-id/public_html/second/main.html"; # secondary Web page html file
$count_file = "/home/usr3/user-id/public_html/second/count.txt"; # counter file
$gif_dir = "../image/"; # directory of gif files for numbers
- ”count.txt”ファイル
カウンタの数値を入れるファイル
count.txt
をここからダウンロードするか、エディターで半角の数字”0”のみ
が入ったファイルを用意して下さい(リターンは入れないで下さい)。
カウンタを途中の番号から始めたい場合は、始めたい番号より1小さ
い数値を半角の数字で書いたファイルをエディターで作って下さい。
ファイル名は、”count.txt”にして下さい。
- 数字のgifファイルの転送
数字を表示するためのgifファイルを10個ダウンロード
して下さい。自分で、数字のgifファイルを作る方や、他の数字のgif
ファイルを使う方は、ここからダウンロードする必要は、ありません。
また、Webの最初のページ用の”gacf”用にすでにこれらのファイルを
ダウンロードしている場合には、新たにダウンロードする必要は、
ありません。具体的なダウンロードの仕方は、”gacf”の
”数字のgifファイルの転送”の部分を御覧下さい。ファイル名は、
”0.gif”、”1.gif”、...、”9.gif”として下さい。
- ファイルのアップロードとアクセス権の変更
ftpで次のファイルをそれぞれのディレクトリへ転送(put)して下さい。
gifファイルはバイナリーモードで、他はテキストモードで転送して
下さい。
- index.html を”/.../user_id/public_html/”へ
- second.html を”/.../user_id/public_html/second/”へ
- count.txt を”/.../user_id/public_html/second/”へ
- gacs.cgi を”/.../user_id/public_html/second/”へ
- n.gif (nは、0〜9) を”/.../user_id/public_html/image/”へ
ただし、gifファイルはすでに”gacf”用に転送していればそれを
共用できるので新たに転送する必要は、ありませんが、”gacs.cgi”
の中の変数”$gif_dirがgifファイルのあるディレクトリを正しく
指定するよう設定して下さい。
上の例は、”index.html”が呼び出し側(リンク元)のページ
で”second.html”が呼び出される側(リンク先)の場合で、second.html
関連のファイルは、secondというディレクトリにある場合です。
”index.html”に最初のWebページ用のカウンタ”gacf”または、
”tacf”を設置している場合には、”index.html”を”index_.html”
にコピーして”index_.html”の方をftpでお送り下さい。
”/.../user_id/”は、ホームページのftpでloginした際のディレク
トリを模式的に示したもので、実際はこの文字通りではありません。
次に”count.txt”ファイルのアクセス許可を”606”に変更して下さ
い。また、”gacs.cgi”のファイルのアクセス許可を”705”に変更
して下さい。そのほかのファイルは、一般の人から読み出し可能であ
ればよいので通常変更不要です。アクセス権の変更の仕方は、
”gacf”の”ファイルのアップロードとアクセス権の変更”の部分を
御参照下さい。
- ファイルのバックアップ等
ftpでWebページのディレクトリへ送った4個または14個のファイルは、
”gacs”の不具合やサーバーの不調等の原因で破壊されるおそれが
ありますので必ずローカルなディスクにバックアップを保存する
とともに、フロッピーディスクやDAT等別媒体にもバックアップして
おいて下さい。細心の注意を払って作っておりますが、”gacs”および
その設置作業に伴う損害は、補償できませんので悪しからず御了承下
さい。
また、カウンタの数値は、時々Webページを見て、日付と時刻
と共にメモしておいて下さい。”count.txt”ファイルが壊れた場合
その数値を用いて再設定して下さい。
- FRAMEタグを使って”gacs”を最初のWebページに設置する場合(御参考)
FRAMEタグを使う場合には、”gacs”を最初のページにも使うことができ
ます。しかし、FRAMEタグは、1996年9月の時点では、Netscape Navigator
2.0以上とInternet Explorer 3.0のブラウザしか対応していません。FRAME
タグに対応していないブラウザでは、一度リンクをクリックしてもらう必要
があります。
- カウント数を増やしたくない場合のgacs: ”gacs0”
FRAMEを使用して、最初のページにgacs.cgiを設置した場合、Webの他の
ページから、この最初のページに戻る際にgacs.cgiを指定するとカウント
が増えてしまいます。このように内部のページから、最初のページに戻る
際に、カウンタの数字は表示したいが、カウント数は増やしたくない場合
があります。こうのような場合には、次の”gacs0.cgi”を御使用下さい。
使い方や設定は、gacs.cgiとほとんど同じです。
gacs0.txt(ver.1.0)(2 KB)
ダウンロードする際には、貴方の計算機でのファイル名は、gacs0.cgiと
して下さい。
- METAタグを使う場合(参考用:おすすめは、しません)
”gacs”を最初のページに使うのにMETAタグを使う方法もあります。しかし、
METAタグは、Netscape Navigator 2.0以上やInternet Explorer 2.0以上等しか
対応していません。その他のブラウザでは、リンクを一度クリックしてもらう必要
があります。また、この方法は、METAタグの一定時間後のページの切り替えの
機能を使っていますので、ダミーの”index.html”が一瞬表示されます。
新しいWebページの設定以外は、FRAMEタグの場合と同じ(従来のWebページの
ファイルは”main.html”というファイル名に変更して下さい)ですので、この
部分のみ以下に例を示します。
<HTML>
<HEAD>
<TITLE>TAKE Soft</TITLE>
<META HTTP-EQUIV="Refresh" CONTENT="0;URL=http://www2a.meshnet.or.jp/~user_id/gacs.cgi">
</HEAD>
<BODY>
Please click this link.<A HREF="gacs.cgi">[HERE]</A>
</BODY>
</HTML>
METAタグの意味は、”このWebページを表示して、0秒たったら、次にURLで
示すページ(ここでは、CGIファイル)を表示しなさい”です。URLは、
貴方のWebページのある場所のgacs.cgiを示すように変更して下さい。
- このgacsに関する質問等
竹ソフトのコメントリンクWebボード
に書き込んでいただくか、当方まで、E-mailをお願いします。
- カンパ等:
資金カンパ、御寄付等は歓迎いたします。送金方法は、”送金”のWeb
ページを御覧下さい。金額は自由。義務ではありません。
この”gcounter/gcl”は、カウンタの各桁毎にCGIを実行する必要がありま
すが、設置が”gacf”より、簡単だという長所があります。gcounterとgclの
2種類があります。どちらもPerlというプログラム言語で書かれたプログラム
(スクリプト)です。カウンタの数字のファイルに書き込む際に、複数のユーザ
が同時に書き込むとファイルが壊れることがあります。これを防止するため
に、gcounterでは、Perlのflockという関数を用いています。しかし、この
flockは、ServerのOSによっては、使用できない場合があります。そこで、
flockが使えない場合のために、シンボリックリンクsymlinkを用いたgcl.cgi
を作りました。gclは、"gcounter using lock file"の意味です。symlinkも
使えない場合は、gcl.cgiのsymlinkをlinkに書き換えてもらうとハードリンク
を使って多重書き込みを防止します。Webサーバーの計算機が、UNIXならlink
は、使えます。通常は、gcounter.cgiを御利用下さい。flockのところでエラー
が出る場合は、gcl.cgiを御利用下さい。
gcounter/gclは、ここから、ダウンロードして貴方のホームページに設置
可能です。ここから
直接ダウンロードされた場合には、無料です(カンパ等は歓迎します)。
このカウンタの特徴は、SSI(Server Side Include)を用いずに、CGI
(Common Gateway Interface)のみで作動するということです。IMGタグからCGI
を起動して、グラフィックカウンタを表示することができます。ただし、この
プログラム(スクリプト)は、Perlで書きましたので、Perlが使えないサイトの
Webページでは使用できません。また、最初のWebページでも、2番目のWebペ
ージでも使えます。更に、カウントする数値を保存するファイルの名前を別々に
指定することにより、一つのgcounter.cgi/gcl.cgiで、複数のWebページのカウントを
行うことができます。
gcounter/gclの設置の方法
gcounter/gclの本体は、ここでは、すぐ中身を見ることができるように
”gcounter.txt”または”gcl.txt”というファイル名にしてありますが、こ
こから転送する際に貴方の計算機では、”gcounter.cgi”または”gcl.cgi”
という名前に必ず変更して下さい。
- ファイルのダウンロード(get):以下のファイルを貴方のコンピュータに
ダウンロード(転送)して下さい。Netscape Navigatorの場合のダウンロードの
しかたは、リンクをクリックして内容を表示させてから、メニューの
”ファイル”から”名前を付けて保存”を選んで下さい。貴方のファイル名を
指定するダイアログがでますから、”gcounter.txt”は”gcounter.cgi”に、
”gcl.txt”を御使用の場合は”gcl.cgi”に変更し下さい。
- gcounter:gcounter.txt (4 KB)
---gcounter本体(ver.1.2)
- gcl :gcl.txt(5 KB)
--------gcl本体(ver.1.1)
- count.txt:count.txt (1 B)
-----カウンタの数値用(初期値の”0”のみのファイル)
- 数字のgifファイルの転送
数字を表示するためのgifファイルを10個ダウンロード
して下さい。自分で、数字のgifファイルを作る方や、他の数字のgif
ファイルを使う方は、ここからダウンロードする必要は、ありません。
具体的なダウンロードの仕方は、このWebページの上の方にある”gacf”の
”数字のgifファイルの転送”の部分を御覧下さい。ファイル名は、
”0.gif”、”1.gif”、...、”9.gif”として下さい。
- ファイルの変更:必要に応じて以下の変更をして下さい。
- ”gcounter.txt”のファイル名を必ず”gcounter.cgi”に変更して下さい。
- ”gcl.txt”の場合はファイル名を必ず”gcl.cgi”に変更して下さい。
- BIGLOBE(mesh)以外で使用される場合は、gcounter.cgi/gcl.cgiのフ
ァイルの1行目を、そのWebサイトのperlを絶対パス名(full path)
で指定するよう変更して下さい。
(現状)”#!/usr/mesh/bin/perl"を、例えば、”#!/usr/local/bin/perl”
のように変更して下さい。perlのある場所は、貴方のプロバイダーや
システム管理者にお問い合わせ下さい。
- BIGLOBE(mesh)では、cgiを起動したときのworking directoryは、cgi
のファイル
のあるdirectoryになるので、gcounter.cgi/gcl.cgiの変数
”$count_dir”は、現在のdirectoryを示す”./”に設定していますが、
絶対パスを指定する必要のあるサイトでは、カウント数を入れておく
ファイル(count.txt等)のファイルのあるdirectoryを絶対パスで指定
して下さい。ただし、この変数の場合は最後の”/”が、必要です。
例えば
$count_dir = "/home/usr01/user_id/public_html/"
です。パスの設定は、サイトによって異なりますので貴方のサイトの
絶対パスが必要な場合は、プロバイダーまたはシステム管理者にお問
い合わせ下さい。
$gif_dirは、BIGLOBE(mesh)では、相対パスで、”./image/”のよ
うに指定できますが、その他の多くの場合、絶対パス(フルパス)で
次の例のように指定して下さい。
$gif_dir = "/home/usr01/user_id/public_html/image/"
$count_dirは、カウント用の数字の入ったファイルのディレクトリで、
$gif_dirは、数字のgifファイルのあるディレクトリです。
最後に必ず、”/”を入れて下さい。
- 数字を示すgifファイルも貴方のグラフィック編集プログラムで変更
したり、新しく作ってもかまいませんが、ファイル名は、元の通りの
もの(十種類)を用意して下さい。
- gifファイル用ディレクトリの作成
貴方のWebサイトの最初のWebページを置くディレクトリ(public_html等)
の下にimageという名前のディレクトリを作って下さい。(ftpのコマンド
の”mkdir image”あるいは、ftpソフトのメニューのCommand/Make
Directory等を使って作成して下さい。)
gifファイル用のディレクトリを作成しなくても、カウンタは設置でき
ますが、その際は、$gif_dirを$count_dirと同じにし、そのディレクトリ
に、gifファイルも置いて下さい(例えば、public_htmlの下)。
- ファイルのアップロード(put)(その1)
ダウンロードして変更したgcounter.cgiとcount.txtファイルをカウンタを
設置するサイトの最初のWebページ(通常”index.html”)のあるディレクトリに
ftpで転送します。このとき転送は、必ずテキストモード(=ASCIIモード)で行
って下さい。そしてファイルのアクセス権を”gcounter.cgi”は705に、
”count.txt”は、606に変更して下さい。
BIGLOBE(mesh)で、ファイルのアクセス許可を変更するには、ftpで目的のサイトに
ログインして次のようにします。
ftp>cd public_html
ftp>dir
ftp>quote site chmod 705 gcounter.cgi
ftp>quote site chmod 606 counter.txt
ftp>dir
ここで、cdはディレクトリを移るコマンド、dirは、そのディレクトリのファ
イル一覧を得るコマンドです(”ls -la”でもよい)。quoteのところでファイ
ルのアクセスを変更しています。telnetで(shellモードと呼んでいるプロバイ
ダもあります)ログインして、ファイルのアクセス権を変更できる
サイトでは、chmod以降の部分のみで変更できます。最後のdirは、アクセス権
が変更されたかチェックするためのものです。ファイルのアクセス権及びその
変更方法については、このWebページのgacfの設置方法のところにより詳しい
説明があります。
ftpのコマンドについて不案内の方は、技術資料のページの”計算機コマンド
のRosetta Stone”を御覧下さい。表2に他のOSのコマンドとの対比を示して
います。
- ファイルのアップロード(put)(その2)
10個の数字のgifファイルをimageディレクトリの下にftpで転送します。
このとき、必ずバイナリーモードで転送して下さい。
- lockファイル用ディレクトリの作成(gclの場合のみ)
gclを御使用の場合、最初のWebページを置くディレクトリの下に”lock”
という名前のディレクトリを作り、そのディレクトリのアクセス権を707
にして下さい。そして、そのディレクトリに”gcltrgt.txt”というファ
イルを置いて下さい。このファイルの中身は、なんでもいいですが、
設置日の日付と時間でも書いておいて下さい。ファイルの構成を示すと
次のようになります。public_html以下の部分は、プロバイダやシステム
によって異なります。上が、最初のWebページのファイル。下が、
gcltrgt.txtファイルです。
/home/usr02/user-id/public_html/index.html
/home/usr02/user-id/public_html/lock/gcltrgt.txt
また、gcl.cgiの変数$lock_dirを、このlockディレクトリを示すように
フルパスで指定して下さい(BIGLOBE等では、相対パスでも可)。
- Web Pageのhtmlファイルの設定
例えば4桁のカウンタを設置する場合には、
カウンタを表示したい位置に次のように記述します。ここで、digitは、桁の
右からの位置を示します。例えば、4は、千の位です。
<IMG SRC="gcounter.cgi?digit=4" BORDER=0 ALT="">
<IMG SRC="gcounter.cgi?digit=3" BORDER=0 ALT="">
<IMG SRC="gcounter.cgi?digit=2" BORDER=0 ALT="">
<IMG SRC="gcounter.cgi?digit=1" BORDER=0 ALT="">
人目(1996年xx月yy日から)
gclの場合は、gcounterの部分をgclにして下さい。
IMGタグとIMGタグの間に改行文字があると表示した数字の間に隙間が空きバック
の色が少し見えますのでIMGタグ間で改行をしないようにして下さい。
最大10桁まで表示できますが、最初は、3桁にしておいて4桁になる前、
または4桁になった後に、4桁に変更するということもできます。3桁にして
おいて、実際のカウントが4桁になっていないかどうかは、ブラウザで確認で
きます。URLを指定するテキストボックスにホームページのURLの指定を書きそのあと
に”count.txt”ファイルの指定してリターンキーを押します。例えば、
”竹ソフト”の場合は、次のように指定します。
http://www2a.meshnet.or.jp/~takesoft/count.txt
カウンタ用のファイルの拡張子をわざわざ”txt”にしているのは、この
ようにすると中身をブラウザから直接見ることができるからです。ただし、
変更はできません。数値を変更する場合は、エディターで半角の数字のみの
ファイルを作り(リターンを入れないようにして下さい)、ftpで送る必要が
あります。最初の場合と同様にファイル名を”count.txt”とする事と、ftpで
送った後、ファイルのアクセス許可を606にする事が必要です。
gcounter/gclで、もう一つ別のWebページにもアクセスカウンタを付ける場合は、
Webページの方には、次のように”cf”というパラメータに、別のカウンタフ
ァイル名(例えば、count2.txt)を指定します。
<IMG SRC="gcounter.cgi?cf=count2.txt&digit=4" BORDER=0 ALT="">
<IMG SRC="gcounter.cgi?cf=count2.txt&digit=3" BORDER=0 ALT="">
<IMG SRC="gcounter.cgi?cf=count2.txt&digit=2" BORDER=0 ALT="">
<IMG SRC="gcounter.cgi?cf=count2.txt&digit=1" BORDER=0 ALT="">
人目(1996年xx月yy日から)
そして、count2.txtという”0”のみの入ったファイルをgcounter.cgi/
gcl.cgiのあるディレクトリ($count_dirで指定したディレクトリ)に送り、ア
クセス権を”606”にします。ファイル名が違う点以外は、count.txtと同じ準
備です。gclの場合は、gcounterの部分をgclにします。
- cgiの実行許可:BIGLOBE(mesh)では、ファイルの拡張子が”cgi”であれ
ば、自動的にcgiとして実行可能なように設定済みなので、ユーザは、特別な
設定は必要ありません。しかし、他のサイトでは、cgiファイルを置くディレ
クトリに”.htaccess”という名前のファイルを作って、
AddType application/x-httpd-cgi .cgi
という行を書いて改行したものをcgiのあるディレクトリに送る必要があった
り、cgiはすべてユーザのcgi-binというディレクトリに置く必要があったりす
る場合があります。詳しくは、プロバイダーまたはシステム管理者にお問い合
わせ下さい。
- gcounterの設置例
竹ソフトのCafe 犀角のWebページ
に4桁のgcounterを取り付けていま
す。取り付けの例として御覧下さい。ブラウザのメニューの”表示/ソース
の表示”でタグの書き方がわかります。ただし、EUCコードのため日本語が
文字化けする場合もありますが、gcounterのタグの部分は半角文字なので
わかると思います。
BIGLOBE(mesh)サーバーで、Netscape Navigator 2.02I[JA]の場合、
gcounterを4桁取り付けても、gcounterのない場合より再表示が遅れる時間
(gcounterによる遅延時間)は、1秒以下(午後3時に計測)と比較的動作は速
いようです。
- gcounterプログラム来歴
- ver.1.0 1996/06/13 初登場
- ver.1.1 1996/10/13 CGIの実行順序飛び越し対策を実施。
cfパラメータ追加。ディレクトリ変数変更。
- ver.1.2 1996/10/28 incrパラメータ廃止(1の位で自動的に増やすよう変更)
- gclプログラム来歴
- ver.1.0 1997/01/18 初登場
- ver.1.1 1997/01/29 カウントファイルのオープンに失敗してもロッ
クファイルが残らないよう修正
- このgcounter/gclに関する質問等
竹ソフトのコメントリンクWebボード
に書き込んでいただくか、当方まで、E-mailをお願いします。
- カンパ等:資金カンパ、御寄付等は歓迎いたします。送金方法は、”送金”
のWebページを御覧下さい。金額は自由。義務ではありません。
竹ソフトのホームページへ戻る
著作・制作(c)1996-2013 竹中: 竹ソフトのWebページに掲載の文書,図,表,
アイコン,写真,プログラム等の無断転載はしないで下さい。
竹ソフトのサイトから転送したファイルにより生じた損害等
あるいは転送作業による損害等は補償できませんので御了承下さい。
Copyright (c)1996-2013 Takenaka: All rights reserved.
連絡先:takesoft(atマーク)mud.biglobe.ne.jp
/初期設置日:1996年6月15日/最終変更日:2013年8月23日