Я провел небольшое исследование правил и условий ModRewrite, но не смог найти удовлетворительный набор правил / условий, которые достигают желаемого мной эффекта.
По сути, у меня есть каталог в домене A (http://www.domaina.com/dir/), который я хотел бы перенаправить в другой каталог в домене B (http://www.domainb.com/diff_dir/).
Обратите внимание, что я хочу применить правило перезаписи, только если пользователь пытается получить доступ к / dir / на domaina. Если они обращаются к другому каталогу или корню, я не хочу переписывать URL.
Спасибо!
В конфигурации домена:
#redirect everything under dir to the same location under domainb.com/diff_dir
RewriteRule ^/dir/(.*)$ http://www.domainb.com/diff_dir/$1 [r=301]
#redirect url http://www.domaina.com/dir to http://www.domainb.com/diff_dir
RewriteRule ^/dir(/)?$ http://www.domianb.com/diff_dir [r=301]
Я не тестировал это, но должно работать.
Примечание:
Если вы делаете это в корневом файле .htaccess или в конкретной конфигурации каталога, вам нужно убрать начальный '/' или иным образом изменить шаблон правила. Что-то вроде ^dir(/)?$
.