2012-01-15 42 views
0

私はいくつかのWordPressのインストールを管理していますが、よく知られているハック可能な/悪用可能なテーマのディレクトリ内のstyle.cssファイルを常時チェックしている不正なボットによって404エラーが発生しています。.htaccess部分一致のRedirectMatch?

www.example.com www.example.com/wp-content/themes/wootube/style.css

www.example.com/wp-content/themes/thestation/style.css

/wp-content/themes/vibrantcms/style.css

悪いボットがたくさんあるさまざまなテーマがありますそれを検索するので、個々のルールを個別に書き込むのではなく、実際のテーマのディレクトリにない限り、style.cssのすべてのインスタンスに一致するリダイレクトマッチを持つ方が意味があります。

たとえば、/ twentyten /ディレクトリ内のテーマを使用している場合、RedirectMatchは/ twentyten /ディレクトリ以外のディレクトリにあるstyle.cssファイルにアクセスするすべての試みをキャッチする必要があります。

答えて

4

私の知る限り、あなたはに、RedirectMatchでこれを行うことはできませんが、mod_rewriteのを有効にしたい場合は、次のような何かをしようとしている。

<Directory .../wp-content/themes/> 
    RewriteCond $1 !=twentyten 
    RewriteRule ^(.*?)/style.css badBotProbe/style.css [L] 
    ... 
</Directory> 

(または、[Rなど他のいくつかのフラグ= 403])。問題は、あなたはまだ、インテリジェントフィルタを行う必要があると思いますので、ログは、これらのランダムなスタイルを持っていますリクエストパラメータを記録し、何をするにしてもです。

あなたが代わりにプローバにクエリをリダイレクトするために、このルールによってエラーログからこれらのプローブを削除することができます:

RewriteRule ^(.*?)/style.css http://{%REMOTE_ADDR}/tryyourself.css [R=301] 

が、これはあなただけで404エントリを削除するには何をしたいのか本当に?

PS。上記はrootの設定にアクセスできることを前提としています。同じソリューションを適切に使用して調整します.htaccess

+1

興味深いですが、301%のREMOTE_ADDR(テストでは機能しませんが、dinslaylandまたはexample.comを使用できます)でも引き続きaccess.logにログインします。エラーログにはありません。 – regilero

+1

うん、それは正しいです:アクセスログには、すべてのアクセスをログに記録し、エラーが悪いものをログに記録します。 IMHO、すべての*悪いものをエラーログに記録する必要があります。私が絡んで本当の問題はここに***監査削減のものであることを考える*** - ひどいコントラスト知られ、未知数対未知の未知数ことを何:あなたはすべての悪いものを記録したいが、あなたは本当に新しいプローブを認識する必要がありますあなたは行方不明かもしれません。その点で、私はアクセスログにその監査減少がしばしばです見つける*はるか*より面白い:200Sとしてうさんくさい何URIを処理されていますか? – TerryE

0

AFAIK Apacheでこれを行う方法はありません。

独自の404ページを設定できますか?

ここにリダイレクトすることができます。

関連する問題