У меня странная проблема.
Я портирую старый, статичный, основанный на .htm сайт на WordPress, и я не хочу терять ни одного индексированного "сока", так как старый сайт работает уже 5 лет или около того.
Я использую следующую строку в моем htaccess, чтобы перенаправить все * .htm к их эквивалентам wordpress.
RedirectMatch 301 ^(.*)\.htm$ $1/
Это нормально работает на каждой странице, кроме страницы индекса, которая настаивает на перенаправлении в / index /, когда я перехожу к http://www.siteurl.com
Мой полный htaccess выглядит так
RedirectMatch 301 ^(.*)\.htm$ $1/
# 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
Я использую структуру /% postname% / permalink (проблемы с производительностью исправлены в 3.3)