ページ: 1
トラックバックスパムで困ってる方へ。
たぶん大丈夫そうなのでこちらに投稿します。
コメントスパム対策に便利なNP_Blacklistですが、これをトラックバックにも適用する方法です。
NP_Blacklistは最新版(Ver0.95b2)を使います。
NP_Trackback.php:
400行あたりにある handlePing ファンクションを探します。そこの、
// 2. check for errors
if (!$tb_id) return 'TrackBack ID is missing (tb_id)';
if ($rss == 'rss'){
$this->rssResponse($tb_id);
return ;
}
if (!$url) return 'URL is missing (url)';
の次に、以下のコードを挿入します。
//_hack: prevent trackback spam
if ($manager->pluginInstalled('NP_Blacklist') and
$plugin =& $manager->getPlugin('NP_Blacklist')) {
$type = 'trackback';
$testString = $url.' '.$title.' '.$blog_name.' '.$excerpt;
$plugin->blacklist($type,$testString);
}
ブロックされたトラックバックスパムは、コメントスパム同様にBlacklistのログで確認できます。
手前味噌ですが:
トラックバックスパム対策
NP_Blacklist Ver0.95b2 レビュー
Nucleusだとか
http://nucleus.datoka.jp/
オフライン
こちらをご覧のみなさまに補足(蛇足)ですが、
配布元の NP_BlackList が Ver0.96 Final に更新されていることに伴い、上記 tips には追加修正が必要です。
(0.96 では、上記そのままではフィルタしてくれません)
上記 yu さんの「トラックバックスパム 対策」から「対策2」を参照してください。
(昨日ここ(だけ)を見て導入しようとして、追加に気づかずしばらくハマりました :oops: )
ひろの日記帳 * http://hiro.intlcafe.info/
オフライン
ひろさん補足ありがとうございます。
こっちのフォローを忘れてました :oops:
Nucleusだとか
http://nucleus.datoka.jp/
オフライン
先日よりblacklistを導入していたのですが、トラックバックへのスパム投稿対策をと、ここで調べていました。
が、どうもスパム投稿をとめれなくて、うーんと考え込んでいました。
で、NP_blacklistの配布元へ出かけてみたところ、0.98が出ていました。
どなたか、これを使っている方いらっしゃいませんか?
で、トラックバックへの対応はどうでしょうか?何か留意する点はあるのでしょうか?
私はすでに導入しているのですが、どうも減らないような・・。気がしているんです。
オフライン
さきほどの書き込みに忘れていたのですが、
http://blog.fullgate.net/item/349
にあるNP_Trackbackの変更は施してあります。
オフライン
さきほどの書き込みに忘れていたのですが、
http://blog.fullgate.net/item/349
にあるNP_Trackbackの変更は施してあります。
こちらでは上記の変更を施して0.98で使用されているようですね。
私のところはそもそも4月以降スパムが来ない…。
#いや、いいことなんですが
藤咲
備忘録とかもろもろ
http://fjsk.tk/
オフライン
レスありがとうございます。
調べが届かなかったようでした。ご教授ありがとうございました。
ということは、とりあえず、様子見してみます。
トラックバックスパムがくる、こないってどういうところできまるんでしょうねぇ。。。
オフライン
私も0.98使っています。
BlackList Logには表示されているのですが、ブロックはされていませんでした。
そこで私のとった策ですが、(いいのかどうかは、、、 )
//_hack: prevent trackback spam
if ($manager->pluginInstalled('NP_Blacklist') and
$plugin =& $manager->getPlugin('NP_Blacklist')) {
$testString = $url.' '.$title.' '.$blog_name.' '.$excerpt;
$spamcheck = array ('type' => 'trackback', 'data' => $testString);
$manager->notify('SpamCheck', array ('spamcheck' => & $spamcheck));
}
の
$testString = $url.' '.$title.' '.$blog_name.' '.$excerpt;
$spamcheck = array ('type' => 'trackback', 'data' => $testString);
$manager->notify('SpamCheck', array ('spamcheck' => & $spamcheck));
を
$spamcheck = array (
'type' => 'trackback',
'data' => $url.' '.$title.' '.$blog_name.' '.$excerpt,
'return' => true
);
$manager->notify('SpamCheck',
array ('spamcheck' => & $spamcheck)
);
if (isset($spamcheck['result']) &&
$spamcheck['result'] == true)
{
return 'Spam!!';
}
としています。
「この修正はやばい!」というのであれば、ご指摘お願いします。
オフライン
ページ: 1