たろマーク (はてなブックマーク)
-
[ aws ][ ec2 ][ s3 ]
-
[ iphone ] oh... 「先月あたりから、AppleはRSSフィードや単なる名刺に毛が生えたような単純なアプリの締め出しを始めたらしい。」
-
[ cpanm ][ yokohama.pm ]
-
[ yokohama.pm ] 雰囲気が何となく伝わるw
■ 言及リンクのない TrackBack ping を弾くプラグインの不具合
ちょっと、TBPingDSBL をスルーしてくる TrackBack SPAM が増えてきましてうんざりぎみだったので、ハテナオヤ氏作 の Plugin を導入に踏み切りました。
以前はまぁ、関係のある話題だったら TB どーぞって感じだったのですが、これで言及リンクがないと TB 受け付けなくなります。(TB 受けてて弾いてるのに気がついたら、手動でリンク張ってきます。SPAM 削除より手間は少なくてすむだろうw)
naoyaのはてなダイアリー - Movable Type で言及リンクのない TrackBack ping を弾くプラグイン
と、いうことで Movable Type でリンクなしトラックバックを受け付けなくするためのプラグイン。mt.cgi で「サイトのURL」に指定した URL が言及元に含まれていなければ弾きます。
http://naoya.dyndns.org/~naoya/lib/mtplugins/mt-ban-norefertb.pl
んで、導入してみて経過を見ていたのですが、配布元エントリのコメントにあるようなエラーが見られて原因を究明してみました。
MT::Plugin::BanNoReferTb v0.01 died with: Can't locate object method "status" via package "HTTP::Headers" at (eval 27) line 1.
ちなみに環境は、こんな感じです。
- Redhat Linux 9
- apache 1.3.33
- perl 5.8.0
- LWP 5.803
- LWP::UserAgent 2.033
- HTTP::Request 1.40
- HTTP::Response 1.52
- HTTP::Headers 1.62
LWP はたまに遊ぶ程度なのでよくわかってないんですが、怒られてるのは、29行目の $res->status っぽいです。
28: my $res = $ua->request(HTTP::Request->new(GET => $tbping->source_url)); 29: return error($app, $tbping, "the server returned " . $res->status) 30: unless ($res->is_success);
$ua->request の戻り値は、HTTP::Response オブジェクトなので、POD を確認すると確かに無いです。多分、$res->status_line かなと。多分。
んで、さくっと修正してたら、上手く動いてるようです。
ちなみに、このエラーは、TB 元のページが無いだとか(404)、タイムアウトしただとかじゃないと出てこないので、こんな修正しなくても使えます。多分。
トラックバック
このエントリーのトラックバックURL:
http://vkgtaro.jp/cgi-bin/mt/mt-tb.cgi/472
この一覧は、次のエントリーを参照しています: 言及リンクのない TrackBack ping を弾くプラグインの不具合:
» mt-ban-norefertb.pl 0.02 from naoyaのはてなダイアリー
んで、導入してみて経過を見ていたのですが、配布元エントリのコメントにあるようなエラーが見られて原因を究明してみました。 mt-ban-norefertb.pl ... [詳しくはこちら]




