Я делаю переадресацию на поддомен в зависимости от выбранного города. У меня получается сделать редирект только на конкретный URL, а нужно чтобы поддомен подставлялся к любой ссылке.
Вот как делаю я:
window.location.href = "http://msk.mysite.com/";
Если человек находится на странице http://mysite.com/catalog/item-1/, мне нужно чтобы вся ссылка забиралась и перед моим доменом mysite.com подставлялся субдомен msk.
Очень надеюсь на вашу помощь.
location.href = location.href.replace(/^https?:\/\//, "$&msk.")
Просто и эффективно:
if (window.location.hostname.indexOf('msk.'))
window.location.hostname = 'msk.' + window.location.hostname;
Метод indexOf в данном случае очень удобен: вернет 0 если поддомен уже добавлен куда нужно (в начало имени хоста), -1 если его подстрока не найдена, и положительное значение если его подстрока найдена не там где нужно.
Любые значения отличные от нуля будут преобразованы в true, и условие выполнится.
Таким образом, редирект будет происходить во всех случаях, когда это необходимо.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей