NP_TrackBack v2.0.3jp2では受信したTrackbackがspamと判定された場合トラックバック受信のお知らせメールを送らないようにしてあるのですが、ここ3日間くらいで数百件のspamトラックバックを食らっていたらその判定部分にバグがありspamトラックバックにもかかわらずメールが送信されてくる場合があることがわかりました。
この問題についてはjp3でfixする予定ですが、このほかにバグって見つけた方いらっしゃいますか?
† 原因
あまり知られていないかも知れませんが、NP_TrackBack v2.0.3jp2ではひとつのエントリに重複してトラックバックが送られてきた場合、先に飛んできたトラックバックの内容を後から飛んできたトラックバックの内容で上書きするというという機能があります。その際に僕の考慮漏れで無条件でメールが飛んでくるようになってしまっていました。
これまではspamトラックバックが重複して飛んでくるということがなかったので気付かなかったのですが、今回のspamがかなりひどかったのでこのようなバグがあることがわかったわけです。
対spamトラックバックについてはサーバの設定をちょっといじっておいたので峠は越えたみたいです
最近入れたので、spamの時もメールを送るにチェックしとくと、送られてくるものかと思ってました。送られてくるメール数>ブロックされた数ってのが謎だったけど、そういうことだったのかも。
管理画面でspamは一括削除できるボタンがあるとありがたいです。またはspamはログに残さないオプションとか。
メール数<ブロックされた数ですね(汗
昨日NP_Trackback2.0.3jp2をインストールしました。
Nucleusのバージョンは、3.22,グローバル設定の文字コードはEUCです。MagicalURLを使っています。
この条件で、NP_TrackBackの管理画面から、「手動ping」をクリックすると
Warning: main(): Unable to access ../../../fancyurls.config.php in /インストールフォルダ/nucleus/plugins/trackback/index.php on line 167
Warning: main(../../../fancyurls.config.php): failed to open stream: No such file or directory in /インストールフォルダ/nucleus/plugins/trackback/index.php on line 167
Warning: main(): Failed opening '../../../fancyurls.config.php' for inclusion (include_path='.:/usr/local/lib/php') in /インストールフォルダ/nucleus/plugins/trackback/index.php on line 167
というワーニングが表示されます。これは、MagicalURLモードを使用しているために発生しているんでしょうね。(fancyURLでは無いので、fancyurls.config.phpファイルはindex.phpと同じところにはコピーしていないので。)
また、2箇所ほどきになる動作をするところがありまして、
プラグイン管理で、プラグインの表のTrackbackのヘルプをクリックすると、英語のヘルプが、
サイドバーのTrackbackをクリックして表示される管理画面からヘルプをクリックすると、日本語のヘルプが表示される。
管理画面から、「手動ping」をクリックすると、日本語の手動pingのフォームが表示され、
スキンに<%TrackBack(from)%>にて設置した手動pingフォームは英語のフォームが表示されます。
これは、どちらも日本語のものを表示することはできないでしょうか?あるいは、環境の問題でしょうか。
まず、fancyurls.config.phpの件についてはおそらくMagicalのせいだと思います。(現在のところリリース前にMagicalでのチェックは行っていないので、そのあたりは良く分からないのですが。)とりあえず、168行目を下記に書き換えると回避できるのではないかと思います。
@include($strRel . 'fancyurls.config.php');
ヘルプの表示については指摘されている現象は認識しているのですが、プラグイン一覧のTrackbackのヘルプのリンクの部分はNucleusのコアで制御されいるため、コアが修正されないと対応できません。そのため、対応の目処は立っていません。混乱が生じないように、プラグイン一覧からヘルプのリンクが出ないようにすることを検討します。
最後のpingformについてですが、まず念のため確認しておきますが、管理画面から「手動ping」をした場合に表示される画面はトラックバックの外部への送信用、<%TrackBack(from)%>のリンクから表示される部分はトラックバックの受信用となっています。したがってこれらは全く違う動作をするフォームです。(旧版からのアップデートだと戸惑われるかと思いますが、これについては1.xから本家版の動作がそのように変更されたため、このようになっています。)
確認したところ、<%TrackBack(from)%>で表示されるトラックバックの手動受信フォームはは多言語化されていませんでしたね。
この部分は次回バージョンで日本語化されるようにしたいと思います。
今回、初心者向けのパッケージを作成してみたのですが、このプラグインを使用させていただきました。事後報告になってしまいましたがよろしかったでしょうか。
初心者向けパッケージですか。それはいいですね。
マニュアル的な回答になってしまいますが、NP_TrackbackのライセンスはGNU GPLですのでそのライセンスに反しない限り自由に頒布を行うことができます。
# 私もNP_Trackbackを改変している一人に過ぎませんので、その条件にしたがって改変と頒布を行っています。
ということで、特に問題ないと思います。
ありがとうございます。
@include($strRel . 'fancyurls.config.php');
この変更で、ワーニングが出なくなりました。
pingフォームは、動作が違ってたんですね。確かに、管理領域に手動pingを受けるフォームがあるのは不思議に思っていたのですが。
NP_TrackBackは1.23bj7からのアップデートだったので、使いやすい機能が追加されていて助かっています。また何かあったらよろしくお願いします。
省略・・・ということで、特に問題ないと思います。
ありがとうございます。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。