AshiatoLOG Ver.1.01

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変更
既存ページの変更

戻る


Ver.1.0xの主な変更点
 
  • 追記型への変更(サーバー負荷の軽減)

  • Ver.0.xxでは容量制限の小さいサーバーを考え、同一アクセスとみなせる記録をまとめて(圧縮して)から、記録ファイルを毎回書き換えていましたが、サーバーの処理時間(負荷)が大きいという欠点がありました。Ver.1.0xでは、普段の記録ファイルへの書き込みを他の多くのアクセス記録CGIと同様に追記型にしました。これによりログ記録時のサーバー負荷が軽減されているはずです。通常、追記型では、記録ファイルサイズがどんどん大きくなってゆく為、容量制限の小さいのサーバーに設置することが難しくなりますが、一日一回決められた時刻(アクセス数が少なく、サーバーがすいている時刻)付近でファイルの圧縮を行うことでVer.0.xxと同様の小さなファイルサイズを実現しています。
  • 透明GIFの表示

  • Ver.0.xxでは貼り付け画像を指定していましたが、画像データをCGI内部に持ち、縦横1画素の透明GIFを表示するように変更しました。今までの貼り付け画像指定のままでも動作するようになっておりますので、いちいちCGI呼び出しのタグを書き換える必要はありません。ただし、表示画像が透明GIF(何も見えない)になってしまいますので、画面レイアウト的に不都合があれば書き直す必要があります。
  • ユーザー設定をconfig.plに集中

  • 旧バージョンでは、ユーザーが設定できるオプションは複数スクリプトファイルの上部に分散していましたが、config.plというファイルにまとめました。一つのファイルだけ書き換えればよいので、ユーザーが設定を変更するのがより容易になりました。
  • 滞留時間を記録

  • 同一セッションとみなせる場合、最初のページをアクセスしてから最後のページをアクセスするまでの時間(サイトの滞留時間)を記録&統計表示する機能を新設しました。最後のページを読んでいた時間は原理的に知り得ませんが、訪問者がどの程度の時間をサイトの閲覧に費やしていたかを知る目安になると思います。
  • いくつかの新統計表示を新設

  • 曜日別アクセス数、検索エンジンからのリンク表示、検索キーワードが日本語だった場合の単語別統計を新たに表示するようにしました。
    また、固定IPからの(同一人物の)アクセスを集計するようにしてみました。(クッキーにより同一人物を特定する機能の搭載は、統計を取りたいページの改造が複雑になるため見送りました。)
  • 参照元への間接ジャンプ機能

  • accview,cgiで統計結果を表示する際、参照元統計では、参照元へのリンクを張っていますが、そのリンクを利用して参照元を確認した際、参照元にアクセス記録CGIが設置されていた場合、accview.cgiが参照元CGIとして記録されてしまうため、相手にaccview.cgiのアドレスがばれてしまう恐れがありましたが、別CGIを経由して参照元に間接的にジャンプすることで、accviewcgiを隠す機能を新設しました。相手がそのCGI(jumper.cgi)を直接閲覧しても、無害な表示がなされるだけになっています。
  • パスワードの新設

  • accview.cgiをアクセスする際、パスワードを設定できるオプションを新設しました。これにより不特定他者の閲覧を禁止することが出来るようになりました。さらに、指定アクセスポイントからの指定ブラウザでのアクセスのみを許可する機能も新設しましたので、これを併用することで、より強固なセキュリティを保てます。
  • リンク元CGIからキーワードを除く機能を削除

  • ログ解析結果を公表する場合、訪問者のプライバシーを考えて検索キーワードを削除するオプションをつけておりましたが、パスワード設定を可能にしたことと、解析結果を公表しているサイトがほとんど無いという実態を考え、削除しました。
  • アクセスポイントを全面的に記録

  • ログ解析結果を公表する場合、訪問者のプライバシーを考えてアクセスポイント情報からプロバイダURLのみ取り出して記録していましたが、利用実態を考え、全面的に記録するよう改めました。
  • 重複巡回ページ削除(strongUniq)機能を削除

  • 「あしあと」を記録する際、同一ページを何度か閲覧しても、一回分の記録にするオプションがありましたが、利用実態を考え、削除しました。
    連続して同一ページをアクセスした場合のみ、ブラウザの再読み込みとみなして、一回分の記録にする機能のみ残してあります。
     
    Ver.1.0xのその他の変更点
     
  • 長い「あしあと」を省略記録する機能を削除

  • オプションで指定されたページ数以上の閲覧は、途中のあしあとを記録しないようにして記録ファイルの容量を小さく保つ工夫をしていましたが、情報が失われることによりページ別アクセス数の統計が不正確になるという欠点があったため、機能を削除しました。
    ただし、この機能は、概略のあしあとパターンを分析できる(最初の閲覧ページ数ページと最後の閲覧ページのパターンが同一になるケースを数える)利点があったので、分析表示時(accview.cgi)にあしあとパターンを省略することで、概略の分析が出来る利点を残してあります。
  • ブラウザ・OS統計を強化

  • ブラウザ(またはダウンロードエージェント、検索ロボット)の中には、NetscapeもどきやInterNetExplolerもどきのブラウザ名をサーバーに告げるものがありますが、それらをNetscapeやInternetExploler統計から除外するように厳密化しました(ただし、完全に詐称しているブラウザを区別することは出来ません)。  そのほか、NetScape6とWindows2000を同定できるように変更しました。
  • いくつかのバグの修正

  • 一部プロキシやブラウザでホスト名や検索元にカンマ「,」文字を使っているものがあり、旧バージョンでは、正しく記録されませんでしたが、そのバグを修正しました。
  • 日本語.jpドメイン対応

  • アクセスポイント集計で、今後増えていくかもしれない「日本語.jp」ドメイン(xxx.xx.jpではない、日経.jpとかkek.jp等)に対応しました。
  • ロック機構の改変

  • ロックファイルの機構を全面的に改めました。残留ロックファイルの削除をユーザーに確認するオプションを削除し、自動的な削除機能のみにしました。(symllinkを使用していたものをrenameに改めたので、残留した場合の状態が異なります。)
  • 記録ファイル消失時の処理の変更

  • バックアップファイルの手動復活オプションを削除し、自動的な復活機能のみにしました。
  • エラー記録ファイルの削除機能

  • ロックファイル残留、記録ファイル消滅等の事故時に記録されるエラー記録ファイルを削除する機能を新設しました。
    ▲TOP
    設置ガイドライン
  • フリーウェアです。著作権は放棄しておりません。個人・法人問わず、ご自由にお使いいただけます。
  • スクリプトの再配布は、原則禁止いたします。ご相談ください。
  • スクリプトの改造は自由ですが、改造後の再配布はご遠慮ください。
  • コピーライト(著作権表示)は削除・改変しないでください。
  • 当スクリプトの利用により、何らかの問題が発生しても、当方ではいっさい責任を持ちません
  • ▲TOP

    ◆必要ファイル
      以下のファイルが必要になります。設定の仕方は 後述します。
     
    ピンク色のファイル名 が新たに加わったファイルです。

    ファイル名 内容 パーミッション
    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をホームページを訪問した人に割り当てる)サーバーが該当します。

    ▲TOP

    ◆ディレクトリ構成

    圧縮ファイルを解凍すると、以下のディレクトリ構造が出来るはずです。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
    ▲TOP
    ◆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で改造する必要があります。
  • ▲TOP
    ◆CGI変更
  • 基本的に、Perlのパス以外は設定不要のはずですが、お好みに合わせ、多少の設定が比較的楽に変更できます。Ver.0.xxと異なり、主な設定は全て 「config.pl」に入っています。メモ帳(Notepad.exe) などのテキストエディタで必要な箇所を編集して下さい。編集が可能な箇所は 、ファイルの中に書いてあります。
  • ▲TOP

    既存ページの変更


    赤字が、記録ディレクトリの指定です。
    そして 緑字が記録される単語です。適宜変更してください。
    青字は順に、ロックファイルが残留しているとみなす時間[300秒]、ファイルロックされていた場合のリトライ回数[5回]です。特に変更する必要は無いと思います。)

    ▲TOP


    注意 (「ページ別アクセス数」について)
    Ver.0.16の、ページ別集計「ページ別アクセス傾向」データは完全ではありませんでしたが、Ver.1.0xの「ページ別アクセス数」では、重複アクセスページの記録削除機能と、あしあとが長くなった場合中間データを削除する機能を廃止してしまいましたので、正しい記録が表示されます
    ブラウザのリロードボタンを押したとき等の同一ページの連続アクセス記録は削除されますから、他のカウンタ&ログ解析CGIよりむしろ正確な集計が出来ている場合もありえます。
    ▲TOP

    ご意見・ご質問・ご要望はこちらまで。
    funabin@abox2.so-net.ne.jp