2010-10-01 57 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添加到他们的帖子中。

相关问题