2014-02-20 2 views
3

У меня есть файл .htaccess, как:подкаталога редиректа субдомны проблемы

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(www\.)?example.com$ [NC] 
RewriteRule ^/?market/(.*)$ http://market.example.com/$1 [L,R=301] 
RewriteRule ^/?buddies/(.*)$ http://buddies.example.com/$1 [L,R=301] 
RewriteRule ^/?bazaar/(.*)$ http://bazaar.example.com/$1 [L,R=301] 

Он отлично работает в подкаталоге рынка. Он перенаправляет на субдомен. Но, есть проблема с другими 2 подкаталогами.

ОШИБКА ДЛЯ ДРУГИХ 2 поддоменов:

The page isn't redirecting properly 

Что я должен сделать, чтобы преодолеть эту проблему?

ответ

5

Это потому, что RewriteCond применим только к следующим RewriteRule. Ваши последние 2 правила выполняются для всех хостов, включая buddies и bazaar, и вызывает цикл перенаправления.

Вы нужны эти правила:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(www\.)?example.com$ [NC] 
RewriteRule ^/?market/(.*)$ http://market.example.com/$1 [L,R=301] 

RewriteCond %{HTTP_HOST} ^(www\.)?example.com$ [NC] 
RewriteRule ^/?buddies/(.*)$ http://buddies.example.com/$1 [L,R=301] 

RewriteCond %{HTTP_HOST} ^(www\.)?example.com$ [NC] 
RewriteRule ^/?bazaar/(.*)$ http://bazaar.example.com/$1 [L,R=301] 
+1

совершенный @anubhava .. Спасибо .. –

+0

Добро пожаловать, рад, что это сработало. – anubhava

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