AshiatoLOG
Ver.0.xxからの
移行ガイド
(2001/04/16 作成)
Ver.1.0xの記録ファイル形式には、Ver.0.xxと互換性はありませんが、Ver.0.xxの記録ファイルを読み込める機能を付加してあります。従って、基本的には、ver.0.xxのスクリプトファイルをVer.1.0xのもので置き換えるだけで移行できます。
Ver.1.0xでかわった事 |
設置ガイドライン |
必要ファイル |
ディレクトリ構成 |
CGI設置 |
CGI変更 |
既存ページの変更 |
戻る |
◆設置ガイドライン
フリーウェアです。著作権は放棄しておりません。個人・法人問わず、ご自由にお使いいただけます。 スクリプトの再配布は、原則禁止いたします。ご相談ください。 スクリプトの改造は自由ですが、改造後の再配布はご遠慮ください。 コピーライト(著作権表示)は削除・改変しないでください。 当スクリプトの利用により、何らかの問題が発生しても、当方ではいっさい責任を持ちません。
以下のファイルが必要になります。設定の仕方は 後述します。
ピンク色のファイル名 が新たに加わったファイルです。
ファイル名 内容 パーミッション accdata/ 記録ディレクトリ 707 access.csv 記録データ(空のファイルです) 606 lock2.dat ロックファイル(記録データへの多重書込みを防止するためのファイル) 606 index.html ダミーHTML(ディレクトリの中身を他人に見られないため) 604 access/ 実行ディレクトリ 705 accimg.cgi 記録(&ダミーイメージ出力)CGI 705 accview.cgi 記録表示CGI 705 accgate.cgi パスワード入力CGI 705 jumper.cgi 記録表示CGIからリンク元にジャンプするためのCGI 705 config.pl 各種オプション設定ファイル(パスワードの設定などは、この中にあります) 604 access.pl 記録ルーチン 604 accviewsub.pl HTML&パスワード関連ルーチン 604 jcode.pl 日本語コード変換ルーチン(Kazumasa Utashiro氏によるスクリプト。最新版は、 ftp://ftp.iij.ad.jp/pub/IIJ/dist/utashiro/perl/ から入手できます。) 604 index.html ダミーHTML(ディレクトリの中身を他人に見られないため) 604 bar1.gif 記録表示CGI用棒グラフ(横)画像(サンプル) ......デフォルト設定では使用しません 604 bar1v.gif 記録表示CGI用棒グラフ(縦)画像(サンプル) ......デフォルト設定では使用しません 604 ※パーミッションについて
上記のパーミッションの3桁の数値は全て真中の桁が「0」になっていますが、 サーバーによっては下二桁を最下位の数字にそろえる(例えば「705」と書いてあるものは「755」にする)必要がある場合があります。
専門的にいうと、CGIが「group」のパーミッションで起動される(ホームページ設置者と同じグループIDをホームページを訪問した人に割り当てる)サーバーが該当します。
圧縮ファイルを解凍すると、以下のディレクトリ構造が出来るはずです。Ver.0.xxを設置する際ディレクトリ構造を変えていない場合は、FTPソフトを使って、この構成のままサーバーにアップロードするようにしてください。古い同名のファイルに上書きされますが、問題ないはずです。(ただし、念のためVer.0.xx自体は、バックアップしておくことをお奨めします。)
Ver.0.xxを設置する際ディレクトリ構造を変えている場合は、同じディレクトリ構造にしてからアップロードすればOKです。cgi-bin(ディレクトリ) | |----accdata(ディレクトリ) | | | |----access.csv | | | |----index.html | | | |----lock2.dat | | |----access(ディレクトリ) | |----access.pl | |----accgate.cgi | |----accimg.cgi | |----accview.cgi | |----accviewsub.pl | |----bar1.gif | |----bar1v.gif | | |----config.pl | |----index.html | |----jcode.pl | |----jumper.cgi
◆CGI設置
- まず、現在動いているVer.0.xxのスクリプトおよび記録データをディレクトリ名を変えるとかディレクトリごとコピーをとるなどしてバックアップしておくことをお奨めします。サーバーによってはうまく動かない場合もありますし、設置ミスもありえますから。特に記録データ「access.csv」はバックアップしておいたほうが良いでしょう。
- 「accview.cgi」・「accgate.cgi」・「accimg.cgi」・「jumper.cgi」の1行目のPerlのパスをVer.0.xxを設置したときと同様にプロバイダにあわせて書き換えてください。
- GIFファイル(画像ファイル)以外のファイルはすべてアスキー(テキスト)モードでアップロードして下さい。
- GIFファイル(画像ファイル)は、バイナリモードでアップロードして下さい。
- ファイル名はすべて半角、アルファベットは小文字です。
- 上記「必要ファイル」の表を参考にして、各ファイルのパーミッションを設定して下さい。
- うまく動作しているか確認します。ブラウザで「http://.../access/accview.cgi」を表示してみてください。
- 「http://.../access/accview.cgi」の動作が正常であることを確認できたら、設置終了です。記録を残したいページは、Ver.0.xと同じままでも動作するはずです。Ver.0.xxで記録を残すように改造した既存ページをブラウザでアクセスしたあと、ブラウザで「http://.../access/accview.cgi」を表示して、うまく記録されていることを確認してください。
- Ver.1.0xで新たに追加された画面解像度の記録機能を利用するためには既存の記録を残したいページを以下の既存ページの変更の方法3で改造する必要があります。
◆CGI変更
- 基本的に、Perlのパス以外は設定不要のはずですが、お好みに合わせ、多少の設定が比較的楽に変更できます。Ver.0.xxと異なり、主な設定は全て 「config.pl」に入っています。メモ帳(Notepad.exe) などのテキストエディタで必要な箇所を編集して下さい。編集が可能な箇所は 、ファイルの中に書いてあります。
赤字で書いてあるのが「accimg.cgi」のパスです。別サーバーから呼び出すときはURLをすべて書く必要があります。
緑字で書いてある単語が、そのページのアクセス時に記録されます。
#!/usr/local/bin/perl
##### ライブラリ指定
require '~/cgi-bin/access/config.pl';
require '~/cgi-bin/access/access.pl';#### アクセス集計ファイル更新
$acclog = new AshiatoFile('~/cgi-bin/accdata/', $wrfile, $errfile, $lockfile, 300, 5, $maxlog, $intime, $updatetm);
$acclog->appendAccFile('CGINAME', $ENV{'HTTP_REFERER'});
赤字が、記録ディレクトリの指定です。
そして 緑字が記録される単語です。適宜変更してください。
(青字は順に、ロックファイルが残留しているとみなす時間[300秒]、ファイルロックされていた場合のリトライ回数[5回]です。特に変更する必要は無いと思います。)
Ver.0.16の、ページ別集計「ページ別アクセス傾向」データは完全ではありませんでしたが、Ver.1.0xの「ページ別アクセス数」では、重複アクセスページの記録削除機能と、あしあとが長くなった場合中間データを削除する機能を廃止してしまいましたので、正しい記録が表示されます。
ブラウザのリロードボタンを押したとき等の同一ページの連続アクセス記録は削除されますから、他のカウンタ&ログ解析CGIよりむしろ正確な集計が出来ている場合もありえます。
ご意見・ご質問・ご要望はこちらまで。
funabin@abox2.so-net.ne.jp