Я пытаюсь выяснить, как сделать перенаправление с помощью mod_rewrite на новый домен, который будет включать перенаправление поддоменов с подстановочными знаками.
Я надеюсь на такой результат:
domain1.com -> domain2.com
domain1.com/foo/bar?baz=quux -> domain2.com/foo/bar?baz=quux
www.domain1.com -> www.domain2.com
www.domain1.com/foo/bar?baz=quux -> www.domain2.com/foo/bar?baz=quux
sub.domain1.com -> sub.domain2.com
sub.domain1.com/foo/bar?baz=quux -> sub.domain2.com/foo/bar?baz=quux
*.domain1.com -> *.domain2.com
*.domain1.com/foo/bar?baz=quux -> *.domain2.com/foo/bar?baz=quux
Я пытался что-то вроде этого:
RewriteCond %{HTTP_HOST} !^(.+\.)?domain2.com$ [NC]
RewriteRule ^ http://%1domain2.com%{REQUEST_URI} [R=301,L]
Но %1
, который я надеялся сослаться на необязательный поддомен, пойманный в RewriteCond
, не был доставлен, полностью удален, поэтому любые запросы в конечном итоге перенаправляются на http://domain2.com%{REQUEST_URI}
.
Что я делаю не так?