ラウンジ(兼FAQ掲示板)

Hyper_Index3.03でカウンタがリセットされます。
過去ログ NO.1169628920
□ わいも [2007年01月22日23時47分]
はじめまして。
数年前からHyper_Index3.0を使用しています。
先日こちらの過去ログから「複数のページにIMG呼び出しタグを設置しカウント値を合計させる」というのを拝見し、自分のHPでも試してみました。
ところがこの設置方法をしてから月一回、早いときで三日に一回、
カウンターの合計数が自動でリセットされてしまうようになりました。
気づいたら5000ほどの数字が0052などになってる感じです。

やはり2つ以上の複数のページに同じIMG呼び出しタグを設置するのが原因でしょうか?
HPを二つ運営していてその二つのHPのカウンターを同じ物にしたいのです。
なにかいい方法はないでしょうか?
□ NXer [2007年01月23日16時14分]

はじめまして。NXerです。

>自動でリセットされ

--------------------------------------------
43 # ファイルロック(完璧では無いがデータ破損防止機構)
# 0 = OFF 1 = ON
$lock_mode = 0;
---------------------------------------
上の初期設定が、ファイルを保護する 1 の設定に
なっているものと思います。

完璧でない、とのことから、わいもさんの現象もありうるの
かもしれません。cgiご利用の環境など不明なために次の
それぞれ独立したカウンター設置愚案が有効かどうかはよく
分かりません。

>二つのHPのカウンター

その場合は、
ディレクトリ名を
/hyper_index1/
/hyper_index2/
などとすればデータも別々に記録されると思います。
念のためにスクリプトも
hyper_index1.cgi
hyper_index2.cgi
count1.data
count2.data
と変更して、試してください。
2つのHPを一つのカウンタでまかなう変更も、できればローカルサーバ
で試行してください。

以上です。
----------------------------以下当方の運用と破損例です。
当方も数年前から長らく千の桁でした。それは、トップページ
のみの単独カウントでした。「複数のページ」にしたところ
急激な増加に転じました。そして、これまでに2度破損を経験
しました。2度とも桁制限を越えたり、繰上げ直後でした。

# トータルカウンターの桁数
$totalfig = 4;
を急遽設定しなおし、
/data/count.datの値を変更しました。

>気づいたら5000ほどの数字が0052などになってる感じです。

破損後のカウント(例52)、それに当日のカウントなどの数の
近似値のカウント数を加えた数をcount.datにアップロード
しました。

参考までに複数のページ設定して分かったことですが
当方の場合は、現在トップページからアクセスいただく
のは、数%、時には1%以下の度数です。サイト構成の違い
があり単純比較はできませんが、資料提供型サイトでは
サーチエンジンの信じることができないような厖大(ぼうだい
例 1,000,000件)かつピンポイントのランキングで、求める
ページにアクセスいただくようです。
貴サイトの構成、コンテンツは不明ですが、もしテキスト
コンテンツ、あるいは、画像コンテンツが、他サイトが提
供していない貴重なものである場合は、「複数のページ」
利用をお勧めします。

なお、hyper_indexのlog_check.cgiを活用されていますか。
破損の原因は不明ですが、悪戯防止のために破損時間直前
のアクセス記録も原因特定化のデータになるかもしれません。
また、HTMLタグなどを許可している掲示板などを運用
されている場合、悪戯を招きやすいようです。掲示板には
相手のプロバイダ名を表示できる機能にするなどしてセキュ
リティを高める必要があるかもしれません。

アクセスの増加は、不可避的に、この種の予期しない事態の
発生の増加につながる、と考え、前向きにhyper_index
を利用しています。
□ わいも [2007年01月23日16時46分]
ご丁寧なお返事ありがとうございました。
ファイルロックの設定が「1」になっていましたので「0」に変更して試してみます。

2つのHPのカウンターを同じものに、という件ですが、

[サイトA] [サイトB]
  ↓    ↓
「<SCRIPT>document.write("<img src='URL/hyper_index3/hyper_index.cgi?ref=",document.referrer,"'>");</SCRIPT>」
カウンタ合計(日別)も一緒、ログも一緒に保存

というのは可能なのでしょうか?

> ディレクトリ名を
> /hyper_index1/
> /hyper_index2/
> などとすればデータも別々に記録されると思います。
> 念のためにスクリプトも
> hyper_index1.cgi
> hyper_index2.cgi
> count1.data
> count2.data
> と変更して、試してください。

という方法を教えて頂きましたがこれだと二つのカウンターがそれぞれで別カウントになるのでは、と思いました。

ファイルロックを0設定にしてみて問題がなければこのままの方法で継続してみますが、
もしこれでも壊れるようであれば上記の方法を試してみたいと思います。
□ NXer [2007年01月23日21時13分]

>別カウントになるのでは
count.datの破損を避けるための万一の回避策のつもりでした。NXerです。

>2つのHPのカウンターを同じものに、

この件ですが、スクリプトから次のように愚考します。

hyper_indexのスクリプトを見ると
---------------------------
$ref = $ENV{'HTTP_REFERER'};
----------------------------
などの幾つかの$ENV(ironment)環境変数がでてきます。
たとえば、referer とはリンクしていたページのURLです。
これら環境変数は、次のような状況で取得されると思われます。

サイトA ~userA の場合

<SCRIPT>document.write("<img src='http://abc.ne.jp/~userA/hyper_index/hyper_index3/hyper_index.cgi?ref=",document.referrer,"'>");</SCRIPT>

cgiを呼び出す文を記述したindex.htmlページにアクセスしたURLを
取得して、加算し カウント 1 を表示します。

ではサイトB ~userB の場合、そちらの index.htmlにAと同じ文を
記述するとどうなるのでしょうか。

当然、上と同じように サイトA ~userA というサーバ上に設置された
cgiを呼び出し カウントして カウント 2を表示するように思われます。

当方では実験できませんが、次のような点は同じ結果になると思います。

1 クッキー利用の値は、同じかもしれない
同一スクリプトの場合、同じコンピュータでは、来訪者個人データ
などはそのコンピュータのクッキーの有効な間はサイトA,サイト
Bに関わりなく同じ結果になるようです。
理由は、JavaScriptファイルの場合、契約先のサーバではなくて
利用者が使っているコンピュータ上で動作するからです。

2 昨日の値は、別サーバの値を表示するかもしれない
ダウンロードして添付されているすえぽんさんのテストhtmlを
表示してみると、HP全体のデータと本日のアクセス度数は
ローカルサーバの値ですが、昨日の値は、当方の契約する別の
サーバの値が表示されています。

このように、
1)ローカルサーバと
2)別サーバの結果
が混在して表示さることから、わいもさんの場合はどのような
結果が表示されるのでしょうか。もし、ご質問の趣旨に一致す
る部分があれば、いろいろお試しください。

-------------------------------
'http://abc.ne.jp/~userA/
-------------------------------
のようにhttp://からはじまるurlの呼び出し文で試してください。
ただし、カウントが自分でアクセスして加算されたのかは
log_check.cgiを起動してその時間を検証する必要があるかも
わかりません。当方にできないことですから、もしできれば
の条件です。よろしくお願いします。
□ わいも [2007年01月23日23時03分]
わかりやすいご説明感謝致します。
早速試してみたいと思います。自分では判らないことばかりなので大変参考になりました。
ありがとうございましたー!

suepon.com | CGI作成/CGI制作 | JavaScript | ドメイン検索 | バナー自動作成 | Google ダンスツール | 松浦亜弥 | H.P.memo | パソコン | ネイル

Copyright (C) 2002 - 2008 suepon , All rights reserved. Powered by CGI Script Market.