У меня есть веб-сайт (назовем его www.abc.com), что мне нужно переадресовать. Целевая страница - www.abc.com/index.html, поэтому перенаправление должно быть на этой странице. Переадресация должна работать, если реферер имеет значение null (кто-то напрямую вводит домен), или реферер поступает извне домена abc.com (например, google.com), в котором он должен перенаправляться на www.abc.com/splash /index.html.Переадресация Javascript на основе referrer
Ближайшая вещь, которую я придумал, ниже, но она не работает. Когда я перехожу на abc.com, он попадает на страницу всплеска, которая хороша. Но затем, когда я нажимаю ссылку на странице всплеска, чтобы перейти на abc.com, она снова перенаправляется на страницу всплеска. Бесконечная петля. Не уверен, что делать здесь, и любая помощь приветствуется!
<script type="text/javascript" charset="utf-8">
if (document.referrer == '' || document.referrer.indexOf('www.abc.com') != -1) {
top.location="http://www.abc.com/splash/index.html";
}
</script>
HTTP_REFERER не гарантируется наличие или точность. Не полагайтесь на это. –
Браузеры не всегда предоставляют document.referrer. Если реферер находится с https, он заблокирован или если параметры безопасности в блоке broswer отсутствуют, он не предоставляется. Эти люди никогда не пройдут мимо страницы всплеска и будут отрезаны от возможности использовать ваш сайт. – Wayne
Спасибо, ребята, это полезно. Я не понимал, что переход с безопасного сайта на небезопасный сайт приведет к удалению реферера. Это имеет смысл, что, когда я прихожу из Google на свой сайт, он не дает мне ссылку. Я должен найти другой подход ... – slybitz