Поскольку я точно не знаю, какое правило создает цикл перезаписи, я могу только предложить этот подход в данный момент:
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.to [NC]
RewriteCond %{REQUEST_URI} !^/foo/bar
RewriteRule ^.*$ /foo/bar [L]
Ваша попытка технически неверна по двум причинам:
*URL 1005 * в .htaccess будет без косой черты (я имею в виду
$1
); вы используете
$1
.. но у вас нет соответствующей настройки группы (другими словами
$1
всегда будет пустым).
Если все равно ничего - укажите реальный htaccess ... или попробуйте включить перезапись перезаписи (RewriteLogLevel 9
) -- но для этого вы должны иметь полный контроль над сервером Apache, поскольку эту директиву нельзя поместить в .htaccess (только для конфигурации сервера / в контексте виртуального хоста) + вам потребуется перезапустить Apache, чтобы перечитать файл конфигурации.
Попробуйте добавить это правило где-нибудь сверху - там, где это будет уместно:
# do not do anything for already existing files
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .+ - [L]