WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:カウンター

chie [WriteDate : Thu Jun 7 11:56:13 2001]

お世話になります。
chieです。

HpmePageにカウンターをつけたいのですが、
どうやって作成すればよいのでしょう?
サーバーはNT4.0です。

作れますか?


バギンズ [MAIL] [URL] [WriteDate : Thu Jun 7 12:26:10 2001]

IIS上でASPでカウンタを表示するんですか?
カウンタはテキストですか?画像ですか?

NTだからWebサーバーはIISとは限らないのできちんと条件を書きましょう。


chie [WriteDate : Thu Jun 7 15:35:47 2001]

WebサーバーはIIS4だったとおもいます。(もしかしたら3かも)
カウンターは画像がいいです。(できなければテキストでもよいです。)

最初、ASPでTopのページを開くとき、データベースかなにかに、
Topを開いた回数を格納し、表示しようと、思ったのですが、
どうやら、カウンターというのは、一つのブラウザ内の移動のときは、
数字をアップさせないらしい、というのを聞きました。

ASPでカウンタを作成できるのでしょうか?


チャチャ入れ [WriteDate : Thu Jun 7 17:17:41 2001]

Googleなどのインターネット検索で、
「アクセスカウンター WindowsNT IIS」なんてキーワードで検索
すれば、山ほど出てきますけど。
設置の仕方も書いてあるでしょう。

そういうことではないの?

ASPで自作しても良いけれど、フリーでいっぱいあるんだから、
わざわざ骨を折ることもないとかあるとか・・・・


バギンズ [WriteDate : Thu Jun 7 23:23:33 2001]

>最初、ASPでTopのページを開くとき、データベースかなにかに、
>Topを開いた回数を格納し、表示しようと、思ったのですが、
基本はそれでいいです。

>どうやら、カウンターというのは、一つのブラウザ内の移動のときは、
>数字をアップさせないらしい、というのを聞きました。
そういうカウンタにしたい場合は、アクセス元のIPアドレスをチェックして判断するのが一般的です。

方法1.直前にアクセスしたIPアドレスと同じだったらカウントアップせず、違ければカウントアップして、一緒にIPアドレスを保存しておく。

方法2.カウントアップしたときのIPアドレスと時間を保存しておき、一定時間内(1時間以内とか)に再度アクセスがあった場合はカウントアップしない。
(その時、一定時間以上経過したIPアドレスの情報は削除する)

等ですかね。

ASPは詳しくないのですが、
Request.ServerVariables("REMOTE_ADDR")
とかで、アクセス元のIPアドレスが取れるのかな?(^_^;)


画像のカウンタは、各桁の画像ファイル名を配列の添え字に合わせて格納しておき、

gifdat[0] = "0.gif"
gifdat[1] = "1.gif"
gifdat[2] = "2.gif"
 ・
 ・
 ・
gifdat[9] = "9.gif"

カウンタの各桁毎に対応する画像ファイル名をIMG要素で出力してあげればいいと思います。


chie [WriteDate : Tue Jun 12 09:40:59 2001]

>方法2.カウントアップしたときのIPアドレスと時間を保存しておき、一定時間内(1時間以内とか)に再度アクセスがあった場合はカウントアップしない。
(その時、一定時間以上経過したIPアドレスの情報は削除する)

それいいですね、
データベースにIPアドレスと時間と、ついでに、IPアドレスの累積アクセスカウントもしてみようと思います。

でも、IPアドレスって絶対1つのPCに1つですか?
一時的にネットにつながってるPCで、同じIPアドレスのPCがいないだけで、そのIPアドレスがずーっと、そのPCとは限らない・・・ってことはないでしょうか?(NIFTYを使っているのですが、初期設定する時、ダイアルアップの設定だけでIPアドレスの設定をしないので、NIFTYが一時的にIPアドレスを割り振っちゃうような気が・・・)

それなら、一定時間内にアクセスした人と、たまたま同じIPアドレスを割り振られた人がアクセスにきちゃったら、カウンタがUPしないですよね。

でも、そんなことはないのかな??



Tak [WriteDate : Tue Jun 12 12:56:46 2001]

ダイヤルアップ接続の場合,接続が確立されるとそのPCに1つのIPアドレスが割り振られます。ですから,その人が接続を切らない限り唯一のIPアドレスだといえます。

間違ってたらごめんなさい。


andi [WriteDate : Tue Jun 12 13:35:26 2001]

PROXY使ってたりすると同一IPで別人ってことも有り得ますね。
また同一人物でもアクセス毎にサーバが動的にIPを割り振ることがあります。

IPでは無くCookieで同一人物判断をしても良いかもしれませんね。


チャチャ入れ [WriteDate : Tue Jun 12 14:15:58 2001]

水を差すようですが、カウンターをそんなに厳密に考えてどうするの
でしょうか?
所詮目安に過ぎないと思いますが。

と言いつつ、同一人物の識別のハナシにも乗るんですが・・・^^;
Cookieを意識的に使わなくても、IIS+ASPならば、Sessionを利用する
と、それっぽい感じになるでしょう。
Sessionの概念は正規のドキュメントに譲るとして、簡単に言うと
Cookieを使った技術で、ユーザー一人一人に個別のSessionが使える。
つまり、Session("hoge")=ユーザ名 みたいな記述でユーザー毎に
値をサーバー側で保持でき、別のASPで利用できる。
保持する期間は、そのIISのASPページ要求を受けてから20分間
(デフォルト)で、その間にASPページ要求出されればまたそこから
20分です。

これをカウントアップの処理に応用すると、こんな感じ。

if Session("hoge")=True then
'一度カウントアップしたので、カウントアップしない
else
'カウントアップ処理
Session("hoge")=True
end if

ちなみにカウント値自体の保持に関しては、最終的にはファイルに
書き込むかDBに書き込むなどして、サーバーが停止する際にも
値を記録しておかなくてはなりません。
ですが、カウントアップ毎にこのような記録処理を行う事は、サーバー
のパフォーマンスを悪化させます。ので、ここはやはりIIS+ASP固有の
手法として、Applicationを使うとよろしいです。

さらに、Global.asaという固有のファイルに、サーバーの起動・終了
時の処理、ユーザー毎のSession開始・終了時の処理を記述すること
が出来るので、これらの組み合わせで、ASPの特性を生かしたカウンター
を作る事が可能です。
これが全部できれば、ASPのスキルアップは間違いなしです。(笑)

>データベースにIPアドレスと時間と、ついでに、IPアドレスの累積
>アクセスカウントもしてみようと思います。
これは、IISのアクセスログを解析するほうが、良いのでは?


Qz [WriteDate : Tue Jun 12 16:38:11 2001]

ところで、ASPでなければいけないんですか?
PerlのCGIが利用可能なら、さがせば、目的のものは見つかると思うのですが・・・
ASPで通常のHTMLに、
<img src="counter.asp?fig=3"><img src="counter.asp?fig=2"><img src="counter.asp?fig=1">
のような感じで、記述して実現させるのは、結構めんどくさいと思います。
ページ自体、ASPで書くのでしたら、問題ないですが・・・


chie [WriteDate : Tue Jun 12 19:08:28 2001]

>その人が接続を切らない限り唯一のIPアドレス
>また同一人物でもアクセス毎にサーバが動的にIPを割り振ることがあります。
やっぱり、IPで判定しないほうがいいのですね。
でも、IPアドレスって、サーバーがわからわかっちゃうんですね。
なんだか、ちょっと怖いかも・・

>PerlのCGIが利用可能なら
NT用Perlなら利用可能らしいのですが、、、
さがすといっても、どうやって探せばよいのでしょう?
また、利用に際して料金が発生したりするのではないでしょうか?
無料で使用できるんでしたら、それがベストではありますが・・・

>ページ自体、ASPで書くのでしたら、問題ないですが・・・
ページ自体、ASPで書くことになりそうです

>水を差すようですが、カウンターをそんなに厳密に考えてどうするの
でしょうか?
そのとうりです。
でも、あんまり変なものを作って、あとで笑われちゃうのもなんですし・・・。
あっでも、変なところでカウントアップしても気づかれなければOKですかね?

とりえず、ASPを使用する方向でいきたいとおもいます。
もし、お使いの書籍でおすすめのものがございましたら、
教えていただけますか?


Qz [WriteDate : Wed Jun 13 03:14:18 2001]

>さがすといっても、どうやって探せばよいのでしょう?

http://www.imjnews.com/bcp/
http://chmod755.magical.gr.jp/
http://script.lovely.to/

あたりのCGIリンク集で探します。

>もし、お使いの書籍でおすすめのものがございましたら、
>教えていただけますか?

http://www.oreilly.co.jp/BOOK/asp/

リファレンスですし、入門用としてはいまいちでしょうけど・・・
書店にいって、自分にあった参考書を探したほうがよいと思います。
あと、Yahooあたりで、ASPで検索されました?
ASPのページの、ASPに関してのリンクから、色々と情報がえられますよ。

とりあえず、こんな感じ。

http://www.yahoo.co.jp/Computers_and_Internet/Software/Internet/World_Wide_Web/Servers/MS_Windows/Active_Server_Pages__ASP_/


Tak [WriteDate : Wed Jun 13 08:55:42 2001]

> カウンターは画像がいいです
img要素からカウンタCGIを起動するやり方だと,テキストブラウザを使用していたり,画像を読み込まない設定にしていたりする(私です)とカウントしてくれません。
APSのことはわかりません (^^;


chie [WriteDate : Wed Jun 13 18:19:03 2001]

バギンズ 様、チャチャ入れ 様、Tak 様、andi 様、Qz 様
みなさま、いつもご親切にありがとうございます。

まだちょっと、理解が難しいので、いったん勉強&検索
してきます。

探し方がわかっただけ、前に進めそうです。
ありがとうございました。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]
ChaichanPAPA's World