2010-10-01 79 views
0

我正在嘗試使用htaccess文件將舊的WordPress博客重定向到新的博客博客,並且我使用下面的代碼;問題是我無法讓舊的個人博客文章重定向到新的博客文章 - 他們在新域名上具有相同的名稱結構(例如:olddomain.com/post-1現在是newdomain.com/post- 1),但如果我輸入其中一箇舊的帖子,我會得到一個500錯誤。我的主頁,類別和索引頁面都是重定向的,以及舊wordpress頁面底部的301重定向。我究竟做錯了什麼?.htaccess代碼將舊的博客網址重定向到一個新的域上的新博客網址

Options +FollowSymlinks 

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^category/(.*)$ http://newdomain.com/tag/$1 [R=301,L] 
RewriteRule ^page/(.*)$ http://newdomain.com/\?page=$1 [R=301,L] 
RewriteRule . /index.php [L] 
RewriteCond %{HTTP_HOST} ^www.olddomain.com [nc,or] 
RewriteCond %{HTTP_HOST} ^olddomain.com [nc,or] 
RewriteRule ^(.*)$ http://newdomain.com/$1 [R=301,nc] 
</IfModule> 

redirect 301 /page-1 http://newdomain.com/page-1 
redirect 301 /page-2 http://newdomain.com/page-2 
redirect 301 /page-3 http://newdomain.com/page-3 

回答

0

你需要做的:

永久重定向/ old_page HTTP // www.newawesomesite.com/old_page

+0

我應該在哪裏放置該代碼?這不僅僅取代我正在使用的(重定向301/page-1 http://newdomain.com/page-1)(它有效)。 這個問題似乎是'RewriteRule。 /index.php [L]'正在打破站點範圍的重定向,但是如果我刪除它,那麼它會打破301重定向。 – Edward 2010-10-01 22:49:45

0

我把它通過更換舊的個別頁面重定向代碼工作:
301重定向/ new-domain .com/page-1

with new rewrite rules:
RewriteRule^page-1 /?$ http:// newdomain .com/pages/page-1 [R = 301,L]

並將這些規則放置在目錄和站點範圍規則的上方。注意:您需要從newdomain url中刪除空格,我必須添加這些空格,因爲網站上的新用戶無法將url添加到他們的帖子中。

相關問題