RewriteRule приводит к бесконечному циклу перенаправления - PullRequest
1 голос
/ 30 января 2010

Заголовок не отражает справедливость вопроса.

У меня есть сайт, и я хочу, чтобы он был перенаправлен в подпапку.

У меня есть это прямо сейчас:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite.net$ [OR]
RewriteCond %{HTTP_HOST} ^www.mysite.net$
RewriteRule ^(.*)$ "http\:\/\/www\.mysite\.net\/subfolder$1" [R=301,L]

Проблема в том, что это приводит к бесконечному циклу перенаправления.Он попадает в / и перенаправляет его в подпапку, а когда он туда попадает, он снова перенаправляет его.

Как мне остановить перенаправление, как только оно попадет в мою назначенную подпапку.

Ответы [ 3 ]

1 голос
/ 30 января 2010

Я думаю, что понял прямо сейчас:

RewriteEngine on
RewriteRule !^(subfolder/) http://www.mysite.net/subfolder/ [L,R]

Получил немного вдохновения от удаленного ответа здесь:

0 голосов
/ 18 февраля 2010

Также для RewriteCond вы можете сделать следующее:

RewriteCond %{HTTP_HOST} ^(www.)?mysite.net$

чтобы сохранить строку

0 голосов
/ 30 января 2010

Добавить правило исключения для цели.

RewriteEngine on

RewriteRule ^/subfolder - [L]

RewriteCond %{HTTP_HOST} ^mysite.net$ [OR]
RewriteCond %{HTTP_HOST} ^www.mysite.net$
RewriteRule ^(.*)$ "http\:\/\/www\.mysite\.net\/subfolder$1" [R=301,L]
...