Многосайтовая проблема ExpressionEngine .htaccess

У меня есть установка ExpressionEngine, на которой работают 2 веб-сайта.

Поскольку я добавил домен, указывающий на второй сайт, мне нужно обновить старые ссылки: http://mysite.com/othersite для перенаправления на http://othersite.com

Итак, несмотря на то, что http://othersite.com открывает другой сайт, когда я пытаюсь добавить:

RewriteEngine On
RewriteBase /

Redirect 301 /othersite http://othersite.com

к корневому файлу .htaccess mysite.com, это приводит к циклу перенаправления для othersite.com

Как я могу это исправить?


person Kevin    schedule 02.08.2013    source источник
comment
Не совсем понятно для всех ваших различных перенаправлений. Вы говорите, что мой сайт должен перенаправлять на другой сайт, но затем вы говорите, что даже если othersite.com открывает другой сайт (. ..). Другой сайт также перенаправляет на мой сайт? Какой URL-адрес, введенный в ваш браузер, вызывает петлю перенаправления?   -  person Kay    schedule 06.08.2013
comment
Нет. mysite.com переходит на mysite.com. othersite.com переходит на othersite.com, однако... mysite.com/othersite находится там, где находится othersite.com, поэтому мне нужно перенаправить любые ссылки с mysite.com/othersite на othersite.com. Однако, когда я это делаю (как в коде, который я разместил выше), это вызывает цикл перенаправления   -  person Kevin    schedule 06.08.2013
comment
Хорошо, просто чтобы понять это правильно: вы действительно хотите перенаправлять людей, которые вводят http://mysite.com/othersite в адресную строку своего браузера, на http://othersite.com, который затем обслуживает файлы из http://mysite.com/othersite? Или пользователи в любом случае знают/вводят только othersite (которое затем будет тайно обслуживаться из mysite/othersite)? (Если вы перенаправляете людей из А в Б, а затем обратно в А, конечно, будет петля!)   -  person Kay    schedule 06.08.2013


Ответы (1)


Измените свой корень .htaccess на

RewriteEngine on
RewriteBase /

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

Вы получаете цикл перенаправления, потому что ваше правило активно для обоих доменов.

person Ravi K Thapliyal    schedule 06.08.2013