コンピューター100%

logfiler

言語 :Perl & JavaScript
ファイルサイズ:32KB 
Version3 ダウンロード
Version2 ダウンロード
Version1 ダウンロード


  • logfiler(ログファイラー)とは?

  • logfilerはアクセスログ取得と、その解析が行えます。
    取得可能な項目は、日付と時刻、ページ表示回数、ブラウザ、リンク元URL、ホスト名またはIPアドレス、識別コードです。

    解析できるのは
    1.ブラウザ(Internet Explorer,Netscape Navigator,Opera)と、バージョンごとの比率
    2.年、月、日ごとのアクセス数集計
    3.時間帯別アクセス数集計
    4.訪問者ごと、初回訪問日時、最終訪問日時、リンク元、ブラウザ取得。
    です。
    ver2から複数のファイルのログを取ることができるようになりました。解析は1つ1つのファイル事になります。

  • 動作環境

  •  Webサーバー側
     ・Perlが使用可能であること。
     訪問者側
     ・JavaScriptが使用可能なこと。未対応又はJavaScriptオフの場合は、来たことも分かりません。
     管理者側(ログ確認者)
     ・JavaScriptが使用可能なこと。
     ・Internet Explorer 5.0以上又は、Netscape6以上を使用していること。

  • 各種設定

  • [accessLog.cgi] データ取得CGIファイル
     1行目にWebサーバーのPerlのパスを入力してください。#!も忘れずに入力してください。
     例)#!/usr/local/bin/perl

    [accessLog.dat] ログデータ
     空のファイルです。

    [logfiler.cgi] ログデータの解析と表示を行うCGIファイル
     1行目にWebサーバーのPerlのパスを入力してください。#!も忘れずに入力してください。
     例)#!/usr/local/bin/perl

    [user.cgi] 訪問者に適当に名前をつけるためのCGIファイル
     1行目にWebサーバーのPerlのパスを入力してください。#!も忘れずに入力してください。
     $maspass = "☆";
     ☆:パスワード
     名前を登録するときに必要になるパスワードを設定しておいてください。

    [user.dat] 訪問者のデータ
     空のファイルです。

  • ファイル構成例

  • public_html/index.html644ログ取得対象HTMLファイル
    public_html/log.js644ログ取得用JavaScriptファイル
    /image/num[0-9].gif644カウンタ用数字画像ファイル
    /cgi-bin/logfiler/accessLog.cgi755データ取得
    accessLog.dat666データ
    logfiler.cgi755データ表示
    user.cgi755訪問者登録
    user.dat666訪問者情報
    num.gif666ダミー画像
    jcode.pl644日本語変換用
    line[0-9].png644グラフ用画像
    tab_com.jpg644グラフ用画像
    tab_home.jpg644グラフ用画像
  • パーミッション(属性)設定

  • 上記のような構成です。CGIファイルを入れたフォルダを777に設定してください。
     [accessLog.cgi]と、[logfiler.cgi]と、[user.cgi]を755に設定してください。
     [accessLog.dat]と、[user.dat]と、[num.gif]を666に設定してください。

  • ログを取るページの設定

  • ログを取るためのタグを出力するスクリプトをJavaScript外部ファイルとして使用します。
    いくつかの設定項目があるので、[log.js]をエディタで開いておいてください。

     設定項目は5つあります。


     1つ目は、ログを取得するためのCGIファイル(accessLog.cgi)のURLを cgipass="パス" に記入してください。そのとき、このlog.jsからではなくて、実際にこれを組み込んでログを取るファイルからのURLになるので、絶対URL(http:// から始まる)で記述してください。
     2つ目は、訪問者その人が何回目の訪問かのカウンタをお望みなら表示できますが、その際数を表示するために、0〜9を示す画像を使います。その数字の画像を入れてあるフォルダを imgdic="フォルダ名" に最後に/(半角スラッシュ)を記入して指定してください。これも上と同じで絶対URLでお願いします。
     3つ目と4つ目は、訪問者のカウンターの前後の文です。
     5つ目は訪問者カウンターが100で割れる場合に表示する、メッセージを記入します。

    終わりましたら上書き保存して閉じてくださってかまいません。

    次は、ログをとりたいファイルを開いて編集します。複数ある場合でも同じようにしてください。

     まず、<HEAD>〜</HEAD>で囲まれた部分のどこかに、以下のソースをコピーしてください。
     

     <SCRIPT type="text/javascript" src="log.js"></SCRIPT>


    訪問者の訪問回数を表示させるには、以下のソースをカウンターを表示させたい位置(※ただし、次に説明する<SCRIPT LANGUAGE="JavaScript">pageCounter();</SCRIPT> )よりもソース上では上)にコピーするとともに、
    0〜9までの画像ファイル[num0.gif]-[num9.gif]を、[log.js]中の imgdic="フォルダ" で指定したフォルダ内に入れてください。
    head="訪問者カウンターの前の文字" と end="訪問者カウンターの後の文字" を指定することで、前後の文を変えられます。

    //↓↓↓↓↓ここから↓↓↓↓↓↓
    <DIV ID="YOURCOUNTER"></DIV>

    //↑↑↑↑↑ここまで↑↑↑↑↑↑

    尚、訪問回数が100で割れる数の場合、kirimes="メッセージ" で指定した文字でメッセージボックスが表示されます。
    次に、<BODY>〜</BODY>で囲まれたボディの部分のどこかに以下のソースをコピーして貼り付けてください。

    //↓↓↓↓↓ここから↓↓↓↓↓↓
    <SCRIPT LANGUAGE="JavaScript">pageCounter();</SCRIPT>
    //↑↑↑↑↑ここまで↑↑↑↑↑↑


    設定例
    <HTML>
    <HEAD>

    <SCRIPT LANGUAGE="JavaScript">

    ****中略****

    </SCRIPT>

    <BODY>
    <DIV ID="YOURCOUNTER"></DIV>
    <SCRIPT LANGUAGE="JavaScript">pageCounter();</SCRIPT>
    </BODY>
    </HTML>

  • 設置後
  •  ファイルをアップロードしたら、動作確認を行ってください。
     ただし、もし設置するサーバーをいじることができるならば、ディレクトリへコピーするだけでかまいません。わざわざ席を立ってほかのPCからFTPで送らなくてもいいです。
    1.ログがとれるように設定したページを表示して、[更新]ボタンをおします。
    2.[logfiler.cgi]にアクセスし、ドロップダウンリストボックスから解析したいファイルを選んで[GO]をクリックします。
    3.[リスト]ボタンを押して、日付や時刻、ブラウザなどの情報が表示されることを確認します。
    4.[訪問者]のボタンを押すと、今アクセスしたあなたのデータが表示されています。
    5.名前の列の[登録]をクリックしてみてください。
    6.名前を登録するフォームが現われます。
    7.[user.cgi]で登録したパスワードと、「自分」、「I」などの好きな名前を入力して登録ボタンを押してみてください。
    8.[logfiler]に戻り、更新してから[訪問者]のボタンを押すと今設定した名前が表示されていると思います。

    不具合がありますか?
    (1)の手順時のエラー

     ・スターテスバーにエラーマークが表示される
      →<SCRIPT>〜</SCRIPT>の間が違っている。
      →ブラウザが対応していない。

     ・訪問者カウンタが表示されない
      →数字の画像ファイルがimgdic="フォルダ"で指定したフォルダに入っていない。
      →クッキーをオフにしている。

     ・アクセスログの場所にxマークが出る。
      →[accessLog.cgi]が動作していない。
       →Perlのパスが正しくない。
       →ダミー画像[num.gif]が[accessLog.cgi]と同じフォルダに無い。
       →[accessLog.dat]が正しくアップロードされていないか、パーミッションが666で無い。

    (2)の手順時のエラー

     ・Not Found
      →入力したアドレスが間違っている。
      →[logfiler.cgi]が正しくアップロードされていない。

     ・Internal Server Error
      → Perlのパスの間違い又はパーミッションの設定の間違い。

     ・リストボックスにファイル名が表示されない
      → 1の手順を踏んでください。
      → [accessLog.dat]が正しくアップロードされていないか、パーミッションが666ではない。

    (3)の手順時のエラー
     ・何も表示されない
      →ブラウザが対応していない。
      →データが無い
       →(1)の手順の際、[更新]ボタンを押していない。
       →HTMLファイルに設定したコードがおかしい、若しくは抜けている。

    (4)の手順時のエラー
     ・何も表示されない
      →[user.dat]がアップロードされていないか、パーミッションが666で無い。
      →使用しているブラウザがJavaScriptに対応していないので、コードの作成が出来なかった。

    (5),(6)の手順時のエラー
     ・Not Found
      →[user.cgi]が正しくアップロードされていない。

     ・Internal Server Error
      →[user.cgi]のPerlのパスの間違い又はパーミッションの設定の間違い。

    (7)の手順時のエラー

     ・「パスワードが違います」
      →パスワードを入力していないか、間違えている。
       [user.cgi]に $maspass = "passward"; という行があるのでそこで設定する。

     ・Internal Server Error
      →[user.dat]がアップロードされていない、又はパーミッションが666でない。

    (8)の手順時のエラー
     ・[名前]の欄が「登録」となっていて変わっていない。
      →[更新]ボタンをクリックして再読み込みする。

  • 注意事項

  • このスクリプトは訪問者を特定して訪問日時やホスト名、ブラウザなどを調べることが可能です。
    コードと名前を対応させるには、掲示板の書き込み日時と比較して割り出します。
    ハンドルネームではありますが、個人情報ともなりえますので、扱いには十分注意してご利用ください。

    また、長期にわたって使用したり、アクセス数の大きいサイトですと、じきに読み込みが遅くなってきます。
    そのときは年や月など区切りのよいところでデータを削除すると軽くなります。

    設置がうまくいかない場合のご質問やスクリプトのバグ、ご意見等ありましたらメールか、ホームページのメールフォームからお寄せください。

    尚、logfilerの著作権はシップが所有します。個人で使用する範囲内での改変は認めますが、その場合の再配布は行わないでください。
     これはフリーソフトですが、寄付などは喜んでお受けしておりますので、メールでお問い合わせください。
     最後に、使ってくださる方々に感謝を込めて。

2003/1/22 シップ
2003/11/16 ver2.00 リリース
URL : http://computer.shipweb.jp/
MAIL: メールフォーム

ページ内検索
文章内から検索:
ランキング
著作権表記
Copy right © Ship.
PR