++++++++++++++++++++++++++++++++++++++++ 【ソ フト 名】 XOOPS Analyzer2 【バージョン】 0.70 【作 成 者】 Marijuana 【動作 環境】 XOOPS2 【U R L】 http://marijuana.ddo.jp/ ++++++++++++++++++++++++++++++++++++++++ 【はじめに】 レッツPHPさんで配布されているPHP Analyzerを参考にXOOPS2のモジュールを作ってみました。 PHP Analyzerとほぼ同じ機能+αを持っています。 モジュール毎のアクセスログや、ユーザー毎のアクセスログもとることが出来ます。 アクセスカウンター、ブラウザ&OS、モジュール、逆リンクをブロックで表示出来ます。 【使 い 方】 ブロックにアクセスのあった時に、ログを記録します。 ブロックの表示をトップページのみにしていると、モジュール毎のログが記録できません。 ブロックの表示とブロックアクセス権をログを記録したい好みに合わせて設定して下さい。 (通常は全てのページに表示) ブロック管理→編集より、各ブロックの表示設定が出来ます。 XOOPS Analyzerブロックの編集画面で、管理者のログを記録するか設定出来ます。 (動的IPでアクセスする場合に有効です) ※管理者のログを記録しないにした場合、ログイン後に同日の同IPのログを削除します。  (23:59にアクセスし0:00にログインすると23:59のログは残ってしまいます) 逆リンクの定義ファイルの作り方(analyzer2/include/refname.inc) 書式: タイトル<>リンク先アドレス<>リファラ記録アドレス(最後に*を付けると前方一致で比較します) サンプルとして、いくつか書いてあるので、参考にして下さい。 基本的にリファラ記録アドレスは、?以前の完全一致で比較します。 web上での編集機能はありませんので、ローカルで編集してアップして下さい。 ファイルの上から比較しますので*を使用する場合は、そのアドレスの一番下に記入して下さい。 例: 俺的XOOPS<>http://marijuana.ddo.jp/xoops/<>http://marijuana.ddo.jp/xoops/* Marijuana<>http://marijuana.ddo.jp/<>http://marijuana.ddo.jp/* このようにすると、http://marijuana.ddo.jp/xoops/以下のアドレスは俺的XOOPSになり それ以外のアドレスがMarijuanaになります。 【機能説明】 管理者画面でアクセスログの表示ができます。 TOP画面のトータルアクセスとユニークアクセスの赤い数字は検索ロボットのアクセス数です。 おまけ機能 1.データベースの最適化。 Peter Naglさん作のOptimizeモジュールをハックして取り込んであります。 原作では、$xoopsDBを使用していなかったので$xoopsDBを使用し、最適化の履歴を保存しません。 OptimizeのついでにAnalyzeコマンドも発行しています。 おまけ機能 2.データベースのチェックと修復 XOOPSで使用のデータベースにあるテーブル全てを、チェックしエラーのあった場合に自動で修復します。 ログ出力 ログデータをcsvでダウンロード出来ます。 DBのデータを無加工で出力しますのでダウンロード後、エクセル等で加工して下さい。 出力時にオプションで、文字コードの指定とデータ削除が選べます。 出力後、画面の更新を行っていませんので、データ削除をチェックした場合は気を付けて下さい。 (SafariのUser-Agentに,(カンマ)が含まれている為、エクセルで表示すると、ズレが生じます) ※あまりに大きなデータを出力するとタイムアウトする場合があります。 リファラ解析の種類を増やした場合など再解析をすることが出来ます。 日にち指定で、1回3000レコードづつ再解析します。(IPアドレスの逆引きはしません) 【設  定】 無視HOST(IP):記録したくないHOST名を指定します。        後方一致ですので、.co.jpで設定すると.co.jpの付くドメインは記録されません。        HOST名が検索できないものは、IPアドレスで指定して下さい。 各ブロックの初期値  ログ記録ブロック :ログ保存期間30、ログ記録間隔60、管理者を記録しない、ホスト名の逆引きする  アクセスカウンター:2日分表示、合計表示  ブラウザ&OS    :今日の3位まで表示  モジュール    :今日の3位まで表示、リンクしない  逆リンク     :今日の5位まで表示  ※逆リンク定義ファイルに書かれていないものは表示しません。 ログ保存期間:ログを保存する日数を設定します。それ以前のログはログの記録時に削除されます。 ログ記録間隔:同一IPアドレスで同じモジュールのログの記録間隔を秒数で設定します。 XOOPS Analyzerとの設定の違いは、ログ保存期間とログ記録間隔がブロックオプションに変更になっただけです。 【補足事項】 ブロック表示をさせないとログの記録をしないため、記録したいモジュールでブロック表示させて下さい。 Ver0.10以下の検索エンジンが検索キーワードに変更になりました。 各ブロックのテンプレートは手抜きなので各自で調整して下さい。 【備  考】 バグ、要望、アドバイスなどありましたら下記にお願いします。 http://marijuana.ddo.jp/ くれぐれも、当スクリプトの事(バグ、要望など)をレッツPHPさんに問合せしないで下さい。 (内部的な処理は殆ど書き変わってます) 【免責事項】 このモジュールを使用することで発生したいかなる損害についても、 ソフトウェア制作者は一切責任を負いません。 【謝  辞】 レッツPHPさん(http://php.s3.to/) 日本ノーベル株式会社さん(http://www-demo.jnovel.co.jp/) 【更新履歴】 Ver0.70:モジュールランキングブロックにリンクの設定を追加 ホスト名表示のSQL修正 Ver0.61:Mozilla系ブラウザでセンター表示するように変更 Ver0.60:ホスト名の逆引きをしない設定を追加 管理画面の表示ロジックをクラス化 アップデートの処理を一時的にコメントアウト Ver0.50:逆リンクブロックの追加 ブロックの表示部分をクラス化 リファラ解析種類を追加 Ver0.42:人気モジュールブロックのフィールド名の修正忘れを修正 Ver0.41:urlencodeの掛け忘れ修正 Noticeエラー低減 Ver0.40:MySQL4.1系へ対応? ロジックの変更 再解析を出来るように変更 Ver0.35:さらなるサニタイズ忘れ修正 myblocksadminをバージョンアップ ログ出力でエンコードのバグ修正 Ver0.34:ログ表示が出来なくなってしまったのを修正 Ver0.33:サイタイズ方法変更 Ver0.32:さらなるサニタイズ忘れ修正 Ver0.31:サニタイズ忘れ修正 ログ出力のエンコード場所変更(環境によりコード変更できません) Ver0.30:ログ出力(csv)追加 Ver0.22:ログ表示のLIMIT句を修正(Ver0.20で直ってませんでした) Ver0.21:逆リンク定義ファイルのパス修正 Ver0.20:ログ表示のLIMIT句を修正 検索エンジン毎の表示を追加 ブラウザ種類を追加 Ver0.10:合計表示のトップでロボットカウンタの数を修正 表示のSQLにLIMIT句追加 READMEとxoops_version.phpの修正 Ver0.02:合計表示のSQL修正 ログ検索のテーブル名修正 Ver0.01:初版リリース このReadmeファイルは「Readmeつく〜る」で作成されました。