- 追加された行はこの色です。
- 削除された行はこの色です。
※この情報は古いので、以下のURLを参照してください。
http://pukiwiki.sourceforge.jp/dev/?PukiWiki%2F1.4%2FProxy
近々書き直します。
#topicpath
#br
**概要 [#p6379385]
プロキシ経由の荒らしなどの対処のため、アクセス制限をかけたい場合があるが、PukiWikiにはバージョン1.4.7までには標準でそのような機能は提供されていない。
そこで、スクリプトを改造して対処することにする。
**できること [#eb4cbb77]
-プロクシ経由を制限
-リファラーで制限
-ホストの範囲で制限
-投稿が英字だけだったら制限
-共有NGワードで制限
--※投稿項目別に設定可能、投稿項目は自動判別します。判別できなかった時はチェックしません。
-指定した項目(ポストデータ)に特定のキーワードが無い場合NG(認証機能)
-NG時ログ記録機能
**参考にしたサイト [#rf35f5f1]
[[PHP用スパム検出ライブラリ>http://bbslabo.breeze.jp/c001_spam_lib_php.html]]
[[訪問者をチェックするPHPスクリプト>http://noongoro.main.jp/note/note0057.html]]
**手順 [#z8255048]
+[[PHP用スパム検出ライブラリ>http://bbslabo.breeze.jp/c001_spam_lib_php.html]]から「spam_php_lib_v003.zip」をダウンロードする。
+解凍して中身をチェックする。
+圧縮ファイルの中にある「spam_check_class.txt」および「spam_config.php」を、自分のPukiwiのpluginディレクトリに文字コードEUC(改行LF)でASCモードでアップロードする。
+pluginフォルダ内にtmpフォルダを作成し、パーミッションを777に変更する。(ここにエラーログが出力される。)
+plugin/edit.inc.phpを以下のように変更。
(9行目)
・利用条件に従い、スパム検出ライブラリ提供サイトのURLを書く。
// PHP用スパム検出ライブラリ - http://bbslabo.breeze.jp/c001_spam_lib_php.htm
(16行目)
・スパム検出ライブラリを呼び出す処理を書く。
function plugin_edit_action()
{
global $vars, $_title_edit, $load_template_func;
if (PKWK_READONLY) die_message('PKWK_READONLY prohibits editing');
↓
function plugin_edit_action()
{
global $vars, $_title_edit, $load_template_func;
include("./spam_config.php"); // スパム検出ライブラリ
if (PKWK_READONLY) die_message('PKWK_READONLY prohibits editing');
+プロキシを経由せずにページ編集してみる。編集画面が出てくることを確認する。
+プロキシを経由してページ編集してみる。編集画面が出てこないで、代わりにエラー画面が表示されることを確認する。
+好みに応じて「spam_config.php」の40行目付近を設定する。
$check_flag = array(
"name"=> 1
,"host"=> 1
,"title"=> 1
,"home"=> 1
,"mail"=> 1
,"message"=> 2
,"proxy" =>1
,"referer" =>0
,"log_write" =>"./POST_DENY.txt"
);