Я пытаюсь получить набор правил .htaccess, соответствующий определенным требованиям: некоторые URL-адреса сопоставляются с одним (с помощью перенаправления) внешним URL-адресам.
Мне нужен корневой путь, чтобы добраться до корневого путидругого внешнего домена.
URL-адреса, которые ранее не отображались, переходят во второй внешний домен с сохранением текущего пути.
Вот что я пробовал:
Redirect /current/url/from-domain http://newDomain1.com/new/url Redirect /current/url/from-domain-2 http://newDomain1.com/new/url-2 RewriteEngine On RewriteCond %{REQUEST_URI} ^/$ RewriteRule ^/(.*)$ http://newDomain2.com/$1 [R]
Iтолько что позволил выполнить два из трех условий, которые мне нужны.Таким образом, должно быть:
сопоставленные URL-адреса -> сопоставленный URL-адрес внешнего домена 1.
http://myCurrentDomain.com/current/url/mapped -> http://externalOne.com/new/url
неотображенные URL-адреса -> внешний домен 2 + старый URL-адрес.
http://myCurrentDomain.com/{anything} (not mapped anything) -> http://externalTwo.com/{anything}
корневой путь -> внешний корневой путь к домену.
http://myCurrentDomain.com -> http://externalTwo.com
Я просто нуб, работающий с .htacces, есть идеи?
Хорошо, нашёл способ:
// For any mapped route RewriteCond %{REQUEST_URI} ^/path/to/orl/url.html$ RewriteRule ^ httph://myNewDomain1.com/new/path [L,R] // endfor RewriteCond %{REQUEST_URI} ^/(.*)$ RewriteRule ^ http://myNewDomain2.com%{REQUEST_URI} [R]
Это всё же не такое хорошее решение, как хотелось бы, потому что мне нужно переписать около 1 КБ URL, но больше новых URL не будет.
Проблема здесь в том, что URL не следуют четкой структуре и не легко соотносятся с новыми URL ...