2011-12-23 4 views
0

У меня есть немного странная проблема.перенаправление старого сайта htm на wordpress permalinks

Я переношу старый, статический, основанный на .htm сайт на Wordpress, и я не хочу потерять какой-либо индексированный «сок», поскольку старый сайт уже 5 лет.

Я использую следующую строку в своем htaccess, чтобы перенаправить все * .htm на их эквиваленты wordpress.

RedirectMatch 301 ^(.*)\.htm$ $1/ 

Это работает отлично на каждой странице, кроме страницы индекса, который настаивает на перенаправлении/индекс/когда я перейти к 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 

I используя структуру%% permandink /% postname%/permalink (проблемы с производительностью, установленные в 3.3)

+0

Вход удален, пожалуйста, обратитесь к FAQ http://stackoverflow.com/faq#signatures –

+0

Извинения, должным образом отмечены! – James

ответ

1

Попробуйте заменить свой .htaccess ниже. Каждый .htm страницу, кроме index.htm (я подозреваю, по умолчанию, когда вы получаете доступ к домашней странице) будет перенаправлен

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/

#if the page is not index.htm 
RewriteCond %{REQUEST_URI} !index\.htm$ [NC] 
#redirect it 
RewriteRule ^(.+)\.htm$ $1/ [L] 

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