2015-03-30 4 views
1

У меня есть блог с помощью wordpress. Я изменил имя домена, поэтому я хочу сделать 301 перенаправление для всех запросов.Почему мой 301 перенаправление не работает?

Мой .htaccess файл:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
RewriteCond %{HTTP_HOST} ^old.com$ [NC,OR] 
RewriteCond %{HTTP_HOST} ^www.old.com$ 
RewriteRule ^(.*)$ http://www.new.org/$1 [R=301,L] 
</IfModule> 


# END WordPress 

отступом три линии нового добавлены для изменения имени домена.

Он может перенаправлять только old.com и www.old.com к www.new.org, но не может перенаправить old.com/XXX к www.new.org/XXX.

Я думаю, что исходное правило противоречит новому добавленному. Но я не знаю, как это изменить.

ответ

2

Ничего не следует изменять между # BEGIN WordPress и # END WordPress. Это всего лишь один из тех WordPress no-no. WordPress перезапишет что-нибудь между этими двумя записями, поэтому поставьте код выше или ниже, чтобы гарантировать, что ничего не будет уничтожено.

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^old.com$ [NC,OR] 
RewriteCond %{HTTP_HOST} ^www.old.com$ 
RewriteRule ^(.*)$ http://www.new.org/$1 [R=301,L] 
</IfModule> 

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
# END WordPress 
+0

ли новые правила должны быть помещены betweeen '' и 'RewriteEngine On'? – NingLee

+0

Нет, не изменяйте ничего между этими двумя комментариями. Просто разместите какие-либо правила выше или ниже блока WordPress. –

+0

Спасибо, но, возможно, он не работает. Наконец, я добавляю новый раздел '' и добавляю в него' RewriteEngine On', и он работает. Файл находится в github [.htaccess] (https://github.com/ninglee/repository/blob/master/.htaccess). – NingLee

Смежные вопросы