- 追加された行はこの色です。
- 削除された行はこの色です。
* 各種 -- [[henoheno]] [#o3c45317]
#freeze
* CVS更新 -- [[henoheno]] [#o3c45317]
- [[開発日記/2006-11-04]] のフィルタについては、teananさんにもコメントをいただいていますが、既存のPukiWiki管理者向けに別途リリースする事を念頭において作業しています。ただ現状のままでは組み込みが煩雑なのと、関数がきちんと整理されていないので再構成を行っています。
** spam.php追加 (CVS版に) [#y3177106]
- [[開発日記/2006-11-04]] のフィルタについては、teananさんにも別途コメントをいただいていますが、既存のPukiWiki管理者向けに別途リリースする事も選択肢の一つとなるように作業しています。ただ現状のままではまだ組み込みが煩雑なのと、関数がきちんと整理されていないのとで、どちらにせよ完成度を高めるべく再構成を行っています。
-- [[cvs:lib/spam.php]] (1.1) とりあえず現状を追加しました。中身は今後も思い切り変更される可能性があります。
** spam.php: [[冒険者]]向け: 現状の組み込み手順 [#h04095ca]
(これで動かせる人は、今すぐ試せるはずです)
試す場合は自己責任で、以下のようにして下さい。
spam.phpをロードする部分。lib/init.php 307行目あたり
$post = & $_POST;
$cookie = & $_COOKIE;
+if (! empty($post)) {
+ require(LIB_DIR . 'spam.php');
+}
チェックする部分。lib/init.phpあたりでもっとうまくやれるはずですが、現状は各プラグイン(のplugin_xxx_action())に仕掛けており、面倒です。editプラグインについては、割り切ったサイトでもない限り、現状は設置しない方がよいでしょう。
pcommentの場合 (commentもほぼ同じ)
--- pcomment.inc.php 3 Oct 2006 14:16:31 -0000 1.44
+++ pcomment.inc.php 12 Nov 2006 15:24:28 -0000
@@ -51,6 +51,11 @@
if (! isset($vars['msg']) || $vars['msg'] == '') return array();
$refer = isset($vars['refer']) ? $vars['refer'] : '';
+ // =========================================
+ // Spam filter test
+ pkwk_spamfilter('POST to #pcomment', $vars['refer'], $vars);
+ // =========================================
+
trackerの場合 (bugtrackもほぼ同じだが下記参照)
--- tracker.inc.php 28 Nov 2005 17:48:30 -0000 1.34
+++ tracker.inc.php 12 Nov 2006 14:22:18 -0000
@@ -84,6 +84,11 @@
if (PKWK_READONLY) die_message('PKWK_READONLY prohibits editing');
+ // =========================================
+ // Spam filter test
+ pkwk_spamfilter('POST to #tracker', $post['_base'], $vars);
+ // =========================================
+
$varsが無い場合は、適宜作って下さい。
function plugin_bugtrack_action()
{
- global $post;
+ global $post, $vars;
一通り終わったら、そのへんにあるspam uriの羅列(uriが沢山含まれている方が良い)を突っ込んでみるとブロックされるはずです。基本的に全ての入力フォームの値がチェックされます。管理者がメールを受けとっているならばメールが飛びます。
後日専用のBugTrackを立てます。((もちろん誰が立ててもいいですが :) ))