[apache] rewrite url на другой домен с исключением

Задача: URL вида http://domain.com/URI перенаправлять на http://otherdomain.org/URI с сохранением URI. При этом, URL вида http://domain.com/lists* не редиректить. Решение такое (2 блока = один для домена без www, второй — с www):

RewriteCond %{REQUEST_URI} !^/lists(.+)$
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://otherdomain.org/$1 [R=301,L]

RewriteCond %{REQUEST_URI} !^/lists(.+)$
RewriteCond %{HTTP_HOST} ^www.domain.com [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://www.otherdomain.org/$1 [R=301,L]

А вот пример, когда нужно сделать такой редирект http://domain.com/page/URI -> http://otherdomain.com/URI (поместить а файл /page/.htaccess относительно корня сайта):

RewriteEngine On
RewriteRule ^(.*)$ http://otherdomain.org/$1 [R=301,L]

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *