Перенаправить основной домен, но не поддомен

Я работаю над сайтом с несколькими продавцами, у каждого продавца есть свой поддомен. Что я хочу сделать, так это перенаправить посетителя на страницу входа при посещении основного домена (главная домашняя страница), но не должно быть перенаправления при посещении поддомена (домашняя страница продавцов).

myproject.com/ перенаправление-> myproject.com/login/

Но

seller.myproject.com/ не должен перенаправлять.

Я пробовал кое-что с htaccess, но в итоге перенаправил субдомены на seller.myproject.com/login/.

Может ли кто-нибудь указать мне в правильном направлении, так как я так плохо с регулярным выражением?

Спасибо!


person sandervh    schedule 17.07.2018    source источник


Ответы (3)


Я думаю, вы можете решить свою проблему с помощью регулярного выражения, используя два появления точек в качестве идентификации того, что пользователь находится на странице продавца. Я не знаю, какой язык вы используете, но вы можете получить представление отсюда.

String input="seller.myproject.com/";
Pattern p=Pattern.compile(("[a-zA-z0-9]\\.[a-zA-z0-9]\\.com"));
Matcher m=p.matcher(input);
if(m.find())
{
     //don't redirect
}
else
{
     //redirect
}
person Owais Ch    schedule 17.07.2018

Хорошо, я только что нашел это:

https://stackoverflow.com/a/16886639/8694548

И это работает, но теперь вопрос, как сделать так, чтобы у всех поддоменов было такое поведение, а не ставить их туда вручную.

Итак, вместо !^(foo|bar)\.example\.com$ > !^(*)\.example\.com$

Спасибо за вашу помощь!

person sandervh    schedule 17.07.2018

Хорошо, теперь у меня есть это, вот что работает для меня:

# Redirect anything except subdomains RewriteCond %{HTTP_HOST} !^(.*)\.myproject\.com$ [NC]

# Redirect to myproject.com/login, preserving the URI RewriteRule ^(.*)$ https://myproject.com/login/ [L,R=302]

person sandervh    schedule 17.07.2018