У меня на сайте стоит редирект, как я поняла открытый. Его код: <?php $url = $_GET["url"]; header("Location: $url"); ?> Я используя этот редирект, чтобы прятать внешние ссылки. Они с редиерктом считаются внутренними. К моему редиректу каким-то образом прицепились поно-сайты, страницы фейсбука и прочая ерунда, создавая ссылки вида «мой сайт/go.php?url=страница порносайта». Как изменить код редиректа, чтобы он не позволял показывать ссылки типа «мой сайт/go.php?url=страница порносайта» для сайтов, ссылки на которые не указаны на моем сайте? Нашла такой код: <?php $_GET[‘url’] = preg_replace(«/(\.\.\/)/»,»»,$_GET[‘url’]); $_GET[‘url’] = preg_replace(«/(\\x)/»,»»,$_GET[‘url’]); $_GET[‘url’] = preg_replace(«/\\\$/»,’***036;’,$_GET[‘url’]); $_GET[‘url’] = preg_replace(«/\\\/»,’***092;’,$_GET[‘url’]); $_GET[‘url’] = str_replace(«|»,»***124;»,$_GET[‘url’]); $url = $_GET[‘url’]; header(«Location: $url»); ?> Но он не рабочий.
@MiraKR, один из вариантов: белый список. Перед выполнением редиректа - проверить на нахождение значения $_GET['url'], например, в заранее заполненном массиве.
Когда то давно это влияло на сео. Каждая внешняя ссылка понижала тиц пр снижала позиции в выдаче и т.д. Вот и забавлялись подобным. --- Добавлено --- Вообще можно сделать не мгновенный переход а с задержкой 10 сек и надписью "Вы уверенны что хотите покинуть наш безопасный сайт?" + Шаблон сайта с внутренними ссылками. Наоборот радоваться нужно считай бесплатный трафик