Перенаправление основного сайта, кроме поддоменов - PullRequest
1 голос
/ 17 апреля 2019

Я провел несколько поисков безуспешно, прежде чем решил опубликовать это.

У меня есть основной сайт, скажем https://mainsite.com и поддомен, скажем, https://subdomain.mainsite.com.

Проблема в том, что я хочу перенаправить только основной сайт на https://mainsite.com/mysite, а не поддомен.

Я пробовал это:

RedirectMatch ^https://mainsite\.com https://mainsite.com/mysite

Это ничего не изменит, если я наберу https://mainsite.com

Первоначально у меня было это на месте, и оно работало нормально для основного сайта:

RedirectMatch ^/$ /mysite
RedirectMatch /mysite/ /mysite

но когда у меня был поддомен, он также добавил /mysite к поддомену, что не то, что я хочу.

Я бы хотел добиться этого с Redirectmatch

Спасибо за любую помощь.

1 Ответ

1 голос
/ 17 апреля 2019

Вы можете использовать mod-rewrite

RewriteEngine on

#if http host not sub.domain.com
RewriteCond %{HTTP_HOST} !sub\.domain\.com
redirect / to /mysite
RewriteRule ^/?$  /mysite [L,R]

В apache 2.4 вы можете заключить ваше RedirectMatch с условием if для проверки заголовка хоста, что-то вроде следующего должно работать на Apache 2.4 или более

 <If "%{HTTP_HOST} == 'example.com'">
RedirectMatch ^/$ /mysite/
</If>

Это перенаправит / на http://example.com/mysite, если хост example.com.

...