最近、デフォルトでリンクなしトラックバックを禁止するサイトも多くなってきました。昨今の状況を考えれば全うとも思えるこのspam対策なんですが、これらのサイトに対してNP_Trackbackでトラックバック返し*1をしようとすると問題があることに気づきました。
NP_Trackbackにはトラックバック元のURLをリダイレクトに変換してしまう機能があるのですが、相手からのトラックバックを一方的に受けた状況でトラックバック返しをしようとすると、自サイトにあるリンクはリダイレクトに変換されているために相手先からはリンクがないと判断され、結果的にこちらからのトラックバックが弾かれてしまうという状況になることがあります。
今回対象にするはてなダイアリーもそのパターン*2です。トラックバックのたびにリダイレクトのOn/Offを設定するのは面倒なので、はてながページをチェックしに来たときにだけリダイレクトでないURLを表示するという改造をNP_Trackbackに施してみました。
† 対応したのは
とりあえず、はてなダイアリーに対応させるのが第1目標だったのですが、ちょっと欲を出して有名どころにいくつか対応させてみました。
・NP_Trackback*3
・はてなダイアリー
・TBPingLinkLookup (MovableType用プラグイン。miyagawaさん作)
・MT::Plugin::BanNoReferTb (MovableType用プラグイン。naoyaさん作)
・livedoorBlog
とりあえずこんなもんでしょうか?この改造については時期リリース分(jp4?)からマージする予定です。これを作っていて、NP_Trackbackが相手先のリンクをチェックするときに、環境によってはちゃんとしたUserAgentを出力していないことが分かったのでその問題も修正しておきました。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。