5: 2007-11-25 (日) 11:45:56 nao-pon |
6: 2008-06-04 (水) 22:16:43 nao-pon |
| * HypCommonPreLoad (えっちわいぴー・こもん・ぷりろーど) [#g3254c0b] | | * HypCommonPreLoad (えっちわいぴー・こもん・ぷりろーど) [#g3254c0b] |
| | | |
| + | #block(round){{ |
| + | :&font(Red){注意};| |
| + | ~Ver 20080604 未満では、すべての機能がデフォルトで有効になっていましたが、Ver 20080604 以降では、デフォルト値が変更になり、すべての機能が無効になっています。 |
| + | ~すでに hyp_preload.conf.php にて、独自設定で運用されている場合は、問題ありませんがデフォルト値で運用されている場合は、「[[設定方法>./#y8348a4c]]」を参考に、hyp_preload.conf.php にて設定を行ってください。 |
| + | }} |
| | | |
| アクセス元の検索ワード&エンジン名取得や、検索語のハイライト表示機能、スパム投稿フィルターを組み込む XOOPS Cube 用の Preload Class です。 | | アクセス元の検索ワード&エンジン名取得や、検索語のハイライト表示機能、スパム投稿フィルターを組み込む XOOPS Cube 用の Preload Class です。 |
| | | |
| + なにはともあれ、HypCommonFunc をサーバーにアップロードしてください。 | | + なにはともあれ、HypCommonFunc をサーバーにアップロードしてください。 |
- | + サーバー上に XOOPS_ROOT_PATH/cache2/kakasi というディレクトリを作成してファイル作成権限を与えてください。 | + | + Ver 20080604 以降では、すべての機能が無効になっていますので、必要に応じて各機能を有効にしてください。 |
| + | -- その設定方法は、このページの「[[設定方法>./#y8348a4c]]」をご覧ください。 |
| | | |
| *** XOOPS Cube の場合 [#zf014fd9] | | *** XOOPS Cube の場合 [#zf014fd9] |
| | | |
| -設定を変えるには XOOPS_TRUST_PATH/class/hyp_common/preload/hyp_preload.conf.php.rename を hyp_preload.conf.php にリネームしてその内容を編集します。~ | | -設定を変えるには XOOPS_TRUST_PATH/class/hyp_common/preload/hyp_preload.conf.php.rename を hyp_preload.conf.php にリネームしてその内容を編集します。~ |
- | また、このファイルは html側の XOOPS_ROOT_PATH/class/hyp_common ディレクトリに置くこともできます。その場合は html側 が優先されますので、サイトごとに設定を変えることも可能です。~ | + | また、このファイルは html側の XOOPS_ROOT_PATH/class/hyp_common ディレクトリに置くこともできます。その場合は html側 が優先されますので、サイトごとに設定を変えることも可能です。 |
| + | |~パス|~ファイル名|~優先度|~備考|h |
| + | |XOOPS_ROOT_PATH/class/hyp_common/|hyp_preload.conf.php|1|編集可| |
| + | |XOOPS_TRUST_PATH/class/hyp_common/preload/|hyp_preload.conf.php|2|編集可| |
| + | |XOOPS_TRUST_PATH/class/hyp_common/preload/|hyp_preload.php|3|編集不可(デフォルト値)&br;上記2つのファイルが存在しない場合このファイル内の設定値が適用されます。| |
| -文字エンコーディングを EUC-JP 以外にして XOOPS を運用している場合(UTF-8など)は、html側のXOOPS_ROOT_PATH/class/hyp_common/hyp_preload.conf.php をその文字エンコーディングで保存してください。 | | -文字エンコーディングを EUC-JP 以外にして XOOPS を運用している場合(UTF-8など)は、html側のXOOPS_ROOT_PATH/class/hyp_common/hyp_preload.conf.php をその文字エンコーディングで保存してください。 |
| -設定箇所は以下の部分です。 | | -設定箇所は以下の部分です。 |
- | #code(php){{ | + | #code(php,15-){{ |
| + | // 各機能のメインスイッチ (On = 1, Off = 0) |
| + | $this->use_set_query_words = 0; // 検索ワードを定数にセット |
| + | $this->use_words_highlight = 0; // 検索ワードをハイライト表示 |
| + | $this->use_proxy_check = 0; // POST時プロキシチェックする |
| + | $this->use_dependence_filter = 0; // 機種依存文字フィルター |
| + | $this->use_post_spam_filter = 0; // POST SPAM フィルター |
| + | $this->post_spam_trap_set = 0; // 無効フィールドのBot罠を自動で仕掛ける |
| // 各種設定 | | // 各種設定 |
| $this->configEncoding = 'EUC-JP'; // このファイルの文字コード | | $this->configEncoding = 'EUC-JP'; // このファイルの文字コード |
| $this->encodehint_name = 'HypEncHint'; // POSTエンコーディング判定用 Filed name | | $this->encodehint_name = 'HypEncHint'; // POSTエンコーディング判定用 Filed name |
| | | |
- | $this->use_set_query_words = 1; // 検索ワードを定数にセット | |
- | $this->use_words_highlight = 1; // 検索ワードをハイライト表示 | |
| $this->msg_words_highlight = 'これらのキーワードがハイライトされています'; | | $this->msg_words_highlight = 'これらのキーワードがハイライトされています'; |
| | | |
- | $this->use_proxy_check = 1; // POST時プロキシチェックする | |
| $this->no_proxy_check = '/^(127\.0\.0\.1|192\.168\.1\.)/'; // 除外IP | | $this->no_proxy_check = '/^(127\.0\.0\.1|192\.168\.1\.)/'; // 除外IP |
| $this->msg_proxy_check = 'Can not post from public proxy.'; | | $this->msg_proxy_check = 'Can not post from public proxy.'; |
- | | |
- | $this->use_dependence_filter = 1; // 機種依存文字フィルター | |
| | | |
| // POST SPAM | | // POST SPAM |
- | $this->use_post_spam_filter = 1; // POST SPAM フィルター | |
| $this->use_mail_notify = 1; // POST SPAM メール通知 0:なし, 1:SPAM判定のみ, 2:すべて | | $this->use_mail_notify = 1; // POST SPAM メール通知 0:なし, 1:SPAM判定のみ, 2:すべて |
| $this->post_spam_a = 1; // <a> タグ 1個あたりのポイント | | $this->post_spam_a = 1; // <a> タグ 1個あたりのポイント |
| $this->post_spam_filed = 51; // Spam 無効フィールドの加算ポイント | | $this->post_spam_filed = 51; // Spam 無効フィールドの加算ポイント |
| $this->post_spam_trap = '___url';// Spam 罠用無効フィールド名 | | $this->post_spam_trap = '___url';// Spam 罠用無効フィールド名 |
- | $this->post_spam_trap_set = 1; // 無効フィールドの罠を自動で仕掛ける | |
| | | |
| $this->post_spam_user = 30; // POST SPAM 閾値: ログインユーザー | | $this->post_spam_user = 30; // POST SPAM 閾値: ログインユーザー |
| $this->post_spam_guest = 15; // POST SPAM 閾値: ゲスト | | $this->post_spam_guest = 15; // POST SPAM 閾値: ゲスト |
| $this->post_spam_badip = 50; // アクセス拒否リストへ登録する閾値 | | $this->post_spam_badip = 50; // アクセス拒否リストへ登録する閾値 |
- | | |
- | // 検索ワード定数名 | |
- | $this->q_word = 'XOOPS_QUERY_WORD'; // 検索ワード | |
- | $this->q_word2 = 'XOOPS_QUERY_WORD2'; // 検索ワード分かち書き | |
- | $this->se_name = 'XOOPS_SEARCH_ENGINE_NAME'; // 検索元名 | |
- | | |
- | // KAKASI での分かち書き結果のキャッシュ先 | |
- | $this->kakasi_cache_dir = XOOPS_ROOT_PATH.'/cache2/kakasi/'; | |
| | | |
| // POST SPAM のポイント加算設定 | | // POST SPAM のポイント加算設定 |
| $this->post_spam_rules = array( | | $this->post_spam_rules = array( |
| // 同じURLが1行に3回 11pt | | // 同じURLが1行に3回 11pt |
- | "/((?:ht|f)tps?:\/\/[!~*'();\/?:\@&=+\$,%#\w.-]+)[^!~*'();\/?:\@&=+\$,%#\w.-]+?\\1[^!~*'();\/?:\@&=+\$,%#\w.-]+?\\1/i" => 11, | + | "/((?:ht|f)tps?:\/\/[!~*'();\/?:\@&=+\$,%#\w.-]+).+?\\1.+?\\1/i" => 11, |
| | | |
| // 65文字以上の英数文字のみで構成されている 15pt | | // 65文字以上の英数文字のみで構成されている 15pt |
| // 'url' => array('newbb/post.php', 'comment_post.php'), | | // 'url' => array('newbb/post.php', 'comment_post.php'), |
| ); | | ); |
| + | |
| + | // 検索ワード定数名 |
| + | $this->q_word = 'XOOPS_QUERY_WORD'; // 検索ワード |
| + | $this->q_word2 = 'XOOPS_QUERY_WORD2'; // 検索ワード分かち書き |
| + | $this->se_name = 'XOOPS_SEARCH_ENGINE_NAME'; // 検索元名 |
| + | |
| + | // KAKASI での分かち書き結果のキャッシュ先 |
| + | $this->kakasi_cache_dir = XOOPS_ROOT_PATH.'/cache2/kakasi/'; |
| }} | | }} |
| | | |
| -検索ワードの分かち書き機能を利用する場合は、サーバーに KAKASI がインストールされていて、その KAKASI のパスを XOOPS_TRUST_PATH/class/hyp_common/hyp_kakasi.php 内で適切に設定する必要があります。 | | -検索ワードの分かち書き機能を利用する場合は、サーバーに KAKASI がインストールされていて、その KAKASI のパスを XOOPS_TRUST_PATH/class/hyp_common/hyp_kakasi.php 内で適切に設定する必要があります。 |
| + | -KAKASI での分かち書き結果のキャッシュ を有効にするには、"$this->kakasi_cache_dir" で指定したディレクトリにファイル作成権限(707, 777 など)を与える必要があります。 |
| + | |
| + | *** 各機能の詳細説明 [#vd0c8534] |
| + | **** 検索ワードを定数にセット [#ee7818e8] |
| + | |
| + | サイト内検索や検索エンジンの検索結果から移動してきた場合に、ユーザーの検索語を定数にセットします。 |
| + | |
| + | **** 検索ワードをハイライト表示 [#q4073e75] |
| + | |
| + | ページ内の検索された語句をハイライト表示します。ちょうど、Google などのキャッシュ表示のような感じです。 |
| + | |
| + | **** POST時プロキシチェックする [#v2279873] |
| + | |
| + | 公開プロキシ経由のフォームからの投稿・登録処理を拒否します。 |
| + | |
| + | **** 機種依存文字フィルター [#efba8454] |
| + | |
| + | Windows の機種依存文字をチェックし、代替文字に置換します。 |
| + | |
| + | **** POST SPAM フィルター [#af96dd9a] |
| + | |
| + | フォームから投稿・登録処理の送信内容をチェックしスパムと判定した場合、即刻 exit() します。(真っ白なページになります) |
| + | |
| + | スパム判定の仕組みは、<a>タグ、BBコードリンク、URL などの個数をチェックし、設定されたポイントを加算していき、閾値を超えたものをスパムと判定します。 |
| + | |
| + | 閾値は、ゲスト・登録ユーザーと分けて設定できます。 |
| + | |
| + | **** 無効フィールドのBot罠を自動で仕掛ける [#a1bd4d0b] |
| + | |
| + | 通常のブラウザには表示されないフィールドを「SPAMボット」用に仕掛けて、そのフィールドに値が入っている場合に特別のポイント加算をします。 |
| | | |
- | -検索語マーカー用のCSSについて~ | + | *** 検索語マーカー用のCSSについて~ [#y53ed636] |
| CSS は XOOPS_ROOT_PATH/xoops.css に追加するとよいでしょう。~ | | CSS は XOOPS_ROOT_PATH/xoops.css に追加するとよいでしょう。~ |
| ※ background: url(&font(Red,b){/xoops/images/ext.png};) center right no-repeat;~ | | ※ background: url(&font(Red,b){/xoops/images/ext.png};) center right no-repeat;~ |