Я использую Apache с правилом перенаправления, например:
RewriteCond %{HTTP_HOST} ^1st-domain\.com
RewriteRule ^(.*)$ http://2nd-domain.com$1 [R=permanent,L]
Это успешно перенаправляет http://1st -domain.com в http://2nd -domain.com Однако, когда REQUEST_URI пусто, я хочу перенаправить на третий домен.
RewriteCond %{HTTP_HOST} ^1st-domain\.com$
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://3rd-domain.com$1 [R=permanent,L]
Но это не работает и вместо этого перенаправляет на 2nd-domain.com
Мои правилаупорядочены так:
RewriteCond %{HTTP_HOST} ^1st-domain\.com$
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://3rd-domain.com$1 [R=permanent,L]
RewriteCond %{HTTP_HOST} ^1st-domain\.com
RewriteRule ^(.*)$ http://2nd-domain.com$1 [R=permanent,L]
Есть предложения?Заранее благодарим.
ОБНОВЛЕНИЕ
- Пусто REQUEST_URI: http: /1st-domain.com
- Непустое REQUEST_URI: http://1st -domain.com / что-то
Первое правило должно направлять пустой request_uri на 3rd-domain.com, второе правило должно направлять непустой request_uri в 2nd-domain.com
ПОЛЕЗНАЯ TIDBIT Вы можете включить отладку mod_rewrite с помощью этого фрагмента:
<IfModule mod_rewrite.c>
RewriteLog "/home/domain.com/logs/rewrite.log"
RewriteLogLevel 3
</IfModule>
Очень полезная опция отладки, которую я не знал.