Код .htaccess для перенаправления старых URL-адресов блогов на новые URL-адреса блогов на новом домене - PullRequest
0 голосов
/ 02 октября 2010

Я пытаюсь перенаправить старый блог WordPress на новый постерный блог, используя файл htaccess, и я использую код ниже;проблема в том, что я не могу заставить старые отдельные записи блога перенаправлять на новые - они имеют одинаковую структуру имени на новом доменном имени (например: olddomain.com/post-1 теперь newdomain.com/post1), но если я введу один из старых постов, я получу ошибку 500.Моя домашняя страница, категория и страницы указателя перенаправляются отлично, а также перенаправления 301 внизу для старых страниц WordPress.Что я делаю не так?

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  

Ответы [ 2 ]

0 голосов
/ 02 октября 2010

Я получил его, заменив старый код перенаправления отдельной страницы:
перенаправление 301 / page-1 http: // newdomain .com / page-1

с новыми правилами перезаписи:
RewriteRule ^ page-1 /? $ Http: // newdomain .com / pages / page-1 [R = 301, L]

и размещение страницы этих правил над правилами каталога и сайта. Примечание: вам нужно удалить пробелы из URL нового домена, который я должен был добавить, поскольку новые пользователи на сайте не могут добавлять URL в свои сообщения.

0 голосов
/ 02 октября 2010

Вам нужно сделать:

RedirectPermanent / old_page http // www.newawesomesite.com / old_page

...