我正在尝试使用htaccess文件将一个旧的wordpress博客重定向到一个新的后期博客,我正在使用下面的代码;问题是我无法将旧的个人博客帖子重定向到新的 - 他们在新域名上具有相同的名称结构(例如:olddomain.com/post-1现在是newdomain.com/post- 1),但如果我输入其中一个旧帖子,我会收到500错误。我的主页,类别和索引页面都是重定向的,以及旧的wordpress页面网址底部的301重定向。我做错了什么?
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 :(得分:0)
你需要这样做:
RedirectPermanent / old_page http // www.newawesomesite.com / old_page
答案 1 :(得分:0)
我通过更换旧的个人页面重定向代码来实现它:
重定向301 / page-1 http:// newdomain .com / page-1
有新的重写规则:
RewriteRule ^ page-1 /?$ http:// newdomain .com / pages / page-1 [R = 301,L]
并将页面放在目录和网站范围规则之上。注意:您需要从我必须添加的新域网址中删除空格,因为网站上的新用户无法将网址添加到其帖子中。
答案 2 :(得分:0)
您应该将以下代码写入您的 .htaccess 文件中。 (这会自动将所有旧帖子 URL 从旧域重定向到确切的新域 URL):
RewriteEngine on
RewriteBase /
RewriteRule (.*) http://newdomain.com/$1 [R=301,L]