Используйте путь с косой чертой, чтобы перенаправить клиента на какой-либо абсолютный путь.
RewriteRule dir1/ / [R,L]
Ошибка в использовании .
вместо /
.
Это прямо из примеров RewriteRule:
Inside per-directory configuration for /somepath
(/physical/path/to/somepath/.htacccess, with RewriteBase /somepath)
for request ``GET /somepath/localpath/pathinfo'':
Given Rule Resulting Substitution
---------------------------------------------- ----------------------------------
[... snip ...]
^localpath(.*) /otherpath$1 /otherpath/pathinfo
В нашем случае /otherpath
это просто /
, и мы не используем $1
, поскольку нам не нужна локальная часть.
Вы также можете перенаправить, используя абсолютные URL-адреса. Это полезно для перенаправления http-запросов на https или для перехода на другие сайты. Вы можете перенаправить на тот же сервер, как это:
RewriteRule dir1/ http://%{HTTP_HOST}/ [R,L]
Но это неоправданно сложно.