WordPress サイトに対する悪質な DDOS 攻撃の被害者になりました。
ありがたいことに、それらは URL の末尾に文字列 ?ptrxcz が追加された GET 要求であるため、簡単に削除できます。
これを念頭に置いて、.htacess を使用してこれを満たすリクエストに 403 パーミッション エラー ページを与えるルールを設定しました。問題は、これらがインストールされたパーマリンクでも機能しないように見えることです。
これが私の完全な .htaccess ファイルです。
RewriteEngine On RewriteCond %{QUERY_STRING} .*ptrxcz.* RewriteRule (.*) - [F] # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
最初の部分は、ptrxcz を使用してユーザーを 403 ページにリダイレクトしています。その下にあるWordPressルールを削除すると、これは完全に機能しますが、それらを含めると機能しません.
イライラすることに、QUERY_STRING 検索で負の正規表現を使用すると、逆に正しく機能します (次のように、クエリ文字列によるリクエスト以外のすべてをブロックします)。
RewriteCond %{QUERY_STRING} !.*ptrxcz.*
(追加されていることに注意してください!)
誰にもアイデアはありますか:
- パーマリンクで機能しない理由
- パーマリンクで機能させる方法
- クエリ文字列で負の正規表現が機能するのに正の正規表現が機能しない理由。