2017-02-17 22 views
1

У меня проблема с перенаправлением поддоменов.htaccess перенаправление из поддомена

Текущие переадресации:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^sub.website.com$ 
RewriteRule ^any/other/page/$ http://website.com/sub/any/other/page/ [R=301,L,NC,QSA] 
RewriteRule ^blog/$ http://website.com/sub/blog/ [R=301,L,NC,QSA] 
..... and much more other rewriterule (50+) 

редирект с поддоменом работает нормально, но http://website.com/blog/ также перенаправлять http://website.com/sub/blog/

Может быть кто-то может найти проблему?

P.S. использование на wordpress, перенаправление перенаправлено до перенаправления wordpress

ответ

2

У вас есть 1 условие и 2 правила. Условия действуют только для первой перезаписи после последнего условия. Вам нужен еще один способ, которым вы их используете.

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^sub\.website\.com$ 
RewriteRule ^any/other/page/$ http://website.com/sub/any/other/page/ [R=301,L,NC,QSA] 
RewriteCond %{HTTP_HOST} ^sub\.website\.com$ 
RewriteRule ^blog/$ http://website.com/sub/blog/ [R=301,L,NC,QSA] 

Основываясь на ваших комментариях.

Если вы хотите консолидировать, вы можете это сделать.

RewriteEngine on 
    RewriteCond %{HTTP_HOST} ^sub\.website\.com$ 
    RewriteRule ^(any/other/page|blog)/$ http://website.com/sub/$1/ [R=301,L,NC,QSA] 
+0

Большое вам спасибо, поэтому не возможно использовать несколько перезаписывающих устройств для одного RewriteCond? – Nefro

+0

Да, это возможно. Я обновил ответ –

+0

, но у меня более 50 перезаписывающих устройств, а страница переадресации иногда не совпадает со старым – Nefro