2012-07-04 4 views
1

Я хочу, чтобы перенаправитьHtaccess и 301 Перенаправление

http://old.clients.domain.com 

в

http://clients.domain.com 

В файле Htaccess, я пишу постоянную переадресацию

Redirect 301/http://clients.domain.com 

Когда я типа old.clients .domain.com, он меняет адрес на clients.domain.com в адресной строке, но он не дает мне страницу, вместо этого он дает мне это в Firefo x:

The page isn't redirecting properly 

Firefox has detected that the server is redirecting the request for this address in a way that will never complete. 

Что делать неправильно? Спасибо.

ответ

0

Если они указывают на тот же корневой каталог то самый простой способ сделать это с условным переписывание заявление в корневом файле .htaccess:

RewriteEngine On 
RewriteBase /

Rewritecond %{HTTP_HOST} =old.clients.domain.com 
RewriteRule ^.*$   http://clients.domain.com/$0 [R=301,L] 

Вам необходимо охраннику, чтобы предотвратить повторное переназначение действительных clients.domain.com запросов, которые в большинстве браузеров, таких как Ff, подберут как Infini te redirect.

+0

Это дает мне эту ошибку' Внутренняя ошибка сервера Сервер обнаружил внутреннюю ошибку или некорректное и не смог завершить свой request.' – Eric

+0

вы очистили кэш переназначения в вашем браузере? – TerryE

+0

Да, я очистил кеш и историю браузеров. – Eric

1

Что это? Неудивительно, что каждый, кто использует пример здесь, получает ошибку внутреннего сервера! = old.clients.domain.com недействителен.

Вместо

Rewritecond %{HTTP_HOST} =old.clients.domain.com 

Использование

Rewritecond %{HTTP_HOST} (www\.)?old.clients.domain\.com 

Так пример правильного кода будет

RewriteEngine On 
RewriteBase/

Rewritecond %{HTTP_HOST} (www\.)?old.clients.domain\.com 
RewriteRule ^.*$ http://new.clients.domain.com/$0 [R=301,L] 

И это будет работать при перенаправлении корневой домен в домен аддон и предотвращать такие ошибки, как «Firefox обнаружил, что сервер перенаправляет запрос на этот адрес таким образом, что никогда не будет полной»

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