I'm trying to redirect an old wordpress blog to a new posterous blog using an htaccess file and I am using the code below; the problem is that I can't get the old individual blog posts to redirect to the new ones - they have the same name structure on the new domain name (eg: olddomain.com/post-1 is now newdomain.com/post-1), but if I type in one of the old post urls I get a 500 error. My home page, category and index pages are all redirecting fine as well as the 301 redirects at the bottom for the old wordpress page urls. What am I doing wrong?
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