このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。

アクセスカウンタをCGIのみで作りたいのですが...

発言者:大河内俊雄
( Date Saturday, May 03, 1997 12:08:15 )


最近ようやくMacHTTPでPerlによるCGIを動作させることが
できるようになりました.

アクセスカウンタを作ろうと思うのですが,MacHTTPではSSIをサポート
していないという情報を耳(目)にしたもので...

CGIだけでは,いわゆる”埋め込み”はできないと思ったのですが,
とあるサイトのカウンタを見ると,
      <IMG SRC="/***/counter.cgi">
てな感じで記述してあります.

これはイメージアクセスカウンタなら”埋め込む”ことができる
ということなのでしょうか?

同様に記述したつもりなのですがCGIが起動しません.

また,これができるとして,CGI(Perl)側でどのように画像ファイルを
入出力すればいいのかわかりません.(これは明らかに勉強不足なのですが..)

インターネットで情報を探していたのですが,またこちらの会議室に
頼ってしまいました.
よかったら,なにかアドバイスをお願いします.

SBK さんからのコメント
( Saturday, May 03, 1997 15:39:06 )

私も詳しくないのですが、少しでも早くに助けになれば
ということでコメントします。

私のつかんでいるところまで申しますと、原理的には、
open(GIF, $gif_filename);
print "Content-type: image/gif\n\n";
print <GIF>;
close(GIF)
で動きます。ですから、

>CGIが起動しません

ということはありません。

ただし、この場合できるのは、既に存在する一つの画像だけです。

アクセスカウンターの場合は、
例えば、123の場合、
1と2と3のGIFファイルを1つのGIFファイルに編集
しなおして、送り直さなければならないので、この原理だけ
ではどうにもなりません。

私の経験では、バラバラにした状態ではいくらやっても
うまく行きませんでした。そして、あきらめました。

私もインターネットで情報を探したのですが、BMP(だったかな)
を合成して出力するアクセスカウンターのソースは、どこかの
サイトにありましたが、GIFを合成する方法についてはみつけら
れませんでした。

ですから、みなさんも、面倒なので、SSIに頼って、HTMLをソー
スを出力するようにしてしまうのでしょうということで、終わりに
してしまいました。

こんな経験ですが、少しはお役にたてますでしょうか。

田中求之 さんからのコメント
( Saturday, May 03, 1997 22:33:29 )

CGI でアクセスカウンタを行う方法として、確かに画像のみで表示するタイプであれば
ページの中に埋め込みで使えます。

Perl にはプログラムによって GIF 画像のデータを生成するライブラリがあるはずな
ので( ClipToGif みたいなの)、それを使ってアクセスの数の GIF データを生成
するような CGI を作ります( HTTP ヘッダーを画像用のものにする必要があります
ので、注意)。

で、ページの中で <IMG SRC="myCounter.acgi"> のように、IMG タグの中で
その CGI を呼び出すようにします。

具体的な Perl のスクリプトについては、詳しい方、フォローよろしく。


ショージ さんからのコメント
( Sunday, May 04, 1997 00:13:26 )

よしもとさんのホームページで紹介されているGD.pmというライブラリを
使えばできなくはないと思いますが、これは合成ということでは無かっ
たと思います。

ぼくが以前に作成したCGIは合成するタイプではなく、各々の数字を読み
出すものだったので、これでは駄目ですね。

現在はCountWebbura(だったっけ?)というCGI(シェアウェアinfo-mac
などで入手)を使うのがいいと思います。

で、よしもとさんのホームページのURLは・・・。あれれ、どこだっけ?

ショージ
shoji@dit.co.jp
kawano@bnn-net.or.jp

田中求之 さんからのコメント
( Sunday, May 04, 1997 00:53:28 )

>よしもとさんのホームページのURLは・・・。あれれ、どこだっけ?

↓ですよん。


→  MacPerl ISLAND

ショージ さんからのコメント
( Sunday, May 04, 1997 19:58:03 )

>↓ですよん。

田中先生ありがとうございました。

で、アクセスしたら文字化けで読めませんでした。なにでデコード
したら良いのかしら。

ショージ
shoji@dit.co.jp
kawano@bnn-net.or.jp

田中求之 さんからのコメント
( Sunday, May 04, 1997 21:21:42 )

>で、アクセスしたら文字化けで読めませんでした。

あ、私もそうでした。たぶん、サーバー側の問題ではないのかな?

どうなんでしょう?>よしもとさん (見てるかな?)

よしもと さんからのコメント
( Tuesday, May 06, 1997 09:19:44 )

あれ?本当ですね。
何故なんだろう?SSIが悪さしているのかな?

よしもと さんからのコメント
( Tuesday, May 06, 1997 16:53:10 )

やっぱ、SSIが悪さしていました。

SSIを使わないようにしたんで、今度はちゃんと読めるはずです。

#ついでに、長らくほっていたページの体裁も整えました。

田中求之 さんからのコメント
( Tuesday, May 06, 1997 17:15:13 )

WebSTAR 2.0 の SSI (2.02 以降)は、日本語のページには使えないようになってます。
勝手に ISO8859-1 に変換しちゃうんですよ。

次のバージョンでは、この機能をオフにできるようにしてくれるそうですが、困ったもの
ではあります。

大河内俊雄 さんからのコメント
( Wednesday, May 07, 1997 02:14:23 )

アドバイスありがとうございます.

なんとかGIFファイルを合成して出力するPerlスクリプトを
見つけようと探しているのですが,なかなか見つかりません.

ほんの少しでも手がかりがあれば教えてください.
お願いします.

okouchi@toriwaki.nuie.nagoua-u.ac.jp
大河内俊雄

だぁにゃ さんからのコメント
( Tuesday, June 24, 1997 23:57:24 )

どうも、はじめまして。

私も自宅のHTTPDでカウンターを入れたいと思い、いろいろ探してたのですが、
検索ページで、http://www2e.meshnet.or.jp/~s-hasei/wwwcount.htm と
いうところを発見しました。gifcat.plなるperlプログラムで複数のgifイメー
ジを連結できるようです。

それでは。

だぁにゃ<daxanya@ingnet.or.jp>