アーカイブ

2007年 3月 25日 のアーカイブ

この日記は基本的にrNoteで動作しているが、自分で多少はPHPをいじれるので様々な改造がしてある。
その中でも、トラックバックスパム対策というのをあえていろいろやっている。
「あえて」と書いたのは、rNoteにはトラックバックを根本的に受付けないという機能や、
トラックバック受付期間の制限など、オリジナルで既に対策は施されているにもかかわらず、
あたしは迷惑トラックバックが欲しいから、わざとそれらの対策はオフにし、
全てのトラックバックを受付けつつ、さらにそれを良い物と悪い物に分類して見たりしている。

トラックバックという仕組み自体が、コッチも読んでくれよという宣伝リンクだから、
宣伝を受付けたくないという人にとっては、全て迷惑行為であり、善も悪もない。
しかしウチの場合は、よその人の宣伝手段を参考にして自分もマネしたいという思いがあり、
簡単で低レベルな宣伝はどんどんはじき、それでも悪質で巧妙な宣伝はまだまだ来てるという、
まぁ、言ってみれば理想的な状態にあり、いたちごっこは続いている。

最初に、こちらへのリンクのないトラックバックは全てスパムであると割り切り、
トラックバックの送信がなされた時点で相手にHTTPリクエストを送るという仕組みに変えた。
いわば、トラックバックを受付けるにふさわしいかどうかを、見て判断するというシステムだ。
ただし見るのは人間ではなく機械だという所が面白く、楽してほとんどのスパムを選別出来た。
しかし、選別してスパムを拒否したからって、スパムが行われる件数が減るわけではない。
拒否するのではなく、301で反射してあげるという自己満足な対策に切り替える。

これで一見、スパム対策は終わったかのように思われたが、
いったんこちらへのリンクを貼ってトラックバックし、後ほどリンクを消して宣伝に書き換えるとか、
こちらのHTTPリクエストで返ってくるHTMLとブラウザで閲覧するHTMLが異なる場合など、
こちらがスクリプトで対抗して行く限界を超えたことをするサイトが増え、放置するしかなくなった。

昨夜、海外から大量のトラックバックスパムが来たのだが、
様々なURLが送信されたけれど、どれも302転送で、実際にブラウザで開くと同じサイトにつく。
転送先ではなく転送元のURLをトラックバックしておきながら、スパムでない事などあるだろうか?
というわけで、送信されたURLにHEADして200を返さない場合は、301反射に決定。

301で反射したからって、反射先が普通はトラックバックを受付けてないので意味はないが、
一応、自分で行ったスパム行為のせいで、自分の鯖に不可がかかることをイメージしてる。

あと、最も根本的な話をすれば、この日記にトラックバックしてもJavaScriptリンクだから全く無意味。
ブラウザで見てる人間様はクリックできるけど、人間様はほとんど見てないし、
機械は結構来てるけどスクリプトで書かれたリンクを辿れないから、宣伝効果はほぼゼロ。