Top/PukiWiki/プロキシ経由の編集を禁止

PukiWiki/プロキシ経由の編集を禁止

※この情報は古いので、以下のURLを参照してください。
http://pukiwiki.sourceforge.jp/dev/?PukiWiki%2F1.4%2FProxy

近々書き直します。

Top/PukiWiki/プロキシ経由の編集を禁止
 

概要

プロキシ経由の荒らしなどの対処のため、アクセス制限をかけたい場合があるが、PukiWikiにはバージョン1.4.7までには標準でそのような機能は提供されていない。
そこで、スクリプトを改造して対処することにする。

できること

  • プロクシ経由を制限
  • リファラーで制限
  • ホストの範囲で制限
  • 投稿が英字だけだったら制限
  • 共有NGワードで制限
    • ※投稿項目別に設定可能、投稿項目は自動判別します。判別できなかった時はチェックしません。
  • 指定した項目(ポストデータ)に特定のキーワードが無い場合NG(認証機能)
  • NG時ログ記録機能

参考にしたサイト

PHP用スパム検出ライブラリ
訪問者をチェックするPHPスクリプト

手順

  1. PHP用スパム検出ライブラリから「spam_php_lib_v003.zip」をダウンロードする。
  2. 解凍して中身をチェックする。
  3. 圧縮ファイルの中にある「spam_check_class.txt」および「spam_config.php」を、自分のPukiwiのpluginディレクトリに文字コードEUC(改行LF)でASCモードでアップロードする。
  4. pluginフォルダ内にtmpフォルダを作成し、パーミッションを777に変更する。(ここにエラーログが出力される。)
  5. 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');
  6. プロキシを経由せずにページ編集してみる。編集画面が出てくることを確認する。
  7. プロキシを経由してページ編集してみる。編集画面が出てこないで、代わりにエラー画面が表示されることを確認する。
  8. 好みに応じて「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"
                        );
このページを共有:
  • このページをはてなブックマークに追加 このページを含むはてなブックマーク
  • このページをlivedoor クリップに追加 このページを含むlivedoor クリップ
  • このページをYahoo!ブックマークに追加
  • このページを@niftyクリップに追加
  • このページをdel.icio.usに追加
  • このページをGoogleブックマークに追加

このページのURL:

ページ新規作成

新しいページはこちらから投稿できます。

TOP