htaccess 301 Перенаправление только при наличии строки запроса - PullRequest
0 голосов
/ 19 июня 2020

Можно ли включить перенаправление (лучше всего было бы перенаправление 301) на внешний домен только при наличии строки запроса?

Example:
domain.com => domain.com
domain.com?query-string => another-domain.com?query-string

Большое спасибо!

@anubhava Большое спасибо за вашу помощь. Теперь у меня есть дополнительные условия, которые я хотел бы добавить:

first-domain.com => https://www.first-domain.com
www.first-domain.com => https://www.first-domain.com
http://first-domain.com => https://www.first-domain.com

first-domain.com?query-string => https://www.another-domain.com/first-domain/?query-string
www.first-domain.com?query-string => https://www.another-domain.com/first-domain/?query-string
http://first-domain.com?query-string => https://www.another-domain.com/first-domain/?query-string
https://www.first-domain.com?query-string => https://www.another-domain.com/first-domain/?query-string

second-domain.com?query-string => https://www.another-domain.com/second-domain/?query-string
www.second-domain.com?query-string => https://www.another-domain.com/second-domain/?query-string
http://second-domain.com?query-string => https://www.another-domain.com/second-domain/?query-string
https://www.second-domain.com?query-string => https://www.another-domain.com/second-domain/?query-string

1 Ответ

2 голосов
/ 19 июня 2020

Вы можете использовать это правило на сайте root .htaccess старого домена:

RewriteEngine On

RewriteCond %{QUERY_STRING} .
RewriteCond %{HTTP_HOST} !^another-domain\.com$ [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ http://another-domain.com/%1%{REQUEST_URI} [L,NE,R=301]
  • RewriteCond %{QUERY_STRING} . проверяет наличие строки запроса.

  • Строка запроса будет автоматически перенаправлена ​​на целевой URL.

...