03 дек 2011
Редирект без передачи REFERER - скрываем HTTP_REFERER
Dmitrius Категория: Web-Мастеру » Уроки
У нас вы можете скачать бесплатно Редирект без передачи REFERER - скрываем HTTP_REFERER .

Данный материал предоставлен сайтом Skripter.info исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Редирект без передачи REFERER - скрываем HTTP_REFERER


Задача: Есть сайт А, с которого совершается переход (кликом по ссылке) на сайт Z. При этом, сайту Z не обязательно знать, что переход совершается с сайта А. Обычно браузеры передают одним из заголовков данные об HTTP_REFERER (сайт-источник). Собственно, всё сводится к тому, чтобы убрать или подменить его неким промежуточным ресурсом X, Y .

1. Простой редирект. На ресурсе А ссылка ставится на некий промежуточный X. Ресурс X перебрасывает посетителя на конечный ресурс Z ( HTTP-заголовок ‘Location: http://www.Z’). Однако, в этом случае REFERER-ом передается ресурс A, несмотря на наличие промежуточного ресурса X

2. Редирект javascript-ом. Имитируем щелчок на странице:

<html>
<head>
<script type='text/javascript'>
function navigateWithReferrer(url) {
var fakeLink = document.createElement('a');
if (typeof(fakeLink.click) == 'undefined')
location.href = url;
else {
fakeLink.href = url;
document.body.appendChild(fakeLink);
fakeLink.click();
}
}
</script>
</head>

3 Редирект с использованием Meta-заголовка REFRESH в HTML коде
<META HTTP-EQUIV=”Refresh” Content=”1; URL=http://Z”>
или HTTP-заголовка header(‘Refresh: 0; url=http://Z’);


4 Редирект с использованием flash-функции getURL(url,”_self”) у пользователя должен быть установлен flash. Кроме того, (сам не проверял…) начиная с IE 7 для Flash-редиректа предусмотрена защита от подмены заголовка










Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.