日付を書き換えるときに .htaccess が設計どおりにルーティングされない

日付を書き換えるときに .htaccess が設計どおりにルーティングされない

.htaccess が期待どおりに機能していません。WP サイトを所有していますが、所有者がブログ エントリのベース パスを /blog/ に移動することにしたため、すべての投稿が検索エンジンから 404 で返されます。投稿のリダイレクトは問題なく機能しましたが、「/2015/03」などの日付カテゴリもリダイレクトする必要があります。次のようなルールを作成しました。

RewriteCond %{REQUEST_URI} ^/(200[1-9]|201[1-9])/(0[1-9]|1[0-2])
RewriteRule (.*) http://www.domain.com/blog/$1

これは問題なく動作しますhttp://htaccess.madewithlove.be/

www.domain.com/2009/05 は www.domain.com/blog/2009/05 に変更してください。

しかし、サイトではまったく機能しません。サイトの開発バージョンがあるので、ライブ サイトを損傷することなくテストや変更を行うことができます。完全な mod_rewrite セクション:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^/(200[1-9]|201[1-9])/(0[1-9]|1[0-2])/
RewriteRule ^(.*) http://www.domain.com/blog/$1

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

何か手がかりはありますか? サーバーは Apache2 を搭載した Ubuntu です。

答え1

.htaccessファイル 内では^このサブディレクトリの先頭と一致するため、^/パターン内では使用しないでください。

また、パターンは201[1-9]2010 と一致しません。

関連情報