Файл
direct.php
<?php if($_GET['url'])
{
$url = base64_decode($_GET['url']);
if (!$url)
{
$url = "https://вашдомен.ру";
}
if (!preg_match('#(https?|ftp)://\S+[^\s.,>)\];\'\"!?]#i',$url))
{
exit ("<p>Неверный формат запроса! Проверьте URL!</p>");
}
header("Location:$url");
exit();
} ?>
На главной
<?php
$mytext=preg_replace('~(<a(?>.*?href))=(["\'])([a-z0-9]++://(?![a-z0-9\.]*?site\.ru).*?)\2~eSi', '"\1=\"https://site.ru/direct.php?url=".base64_encode("$3")."\" target=\"_blank\"";', $mytext);?>
site.ru и вашдомен.ру
- заменить на свой домен
Суть такова что заменитель, подставляет в переменную внутреннего адреса внешний адрес, и дополнительно кодирует её в
base64
.
Но код не срабатывает почему? Абсолютно ничего он делает на сайте